tag:forum.selfhtml.org,2005:/self PHP: Seite ausgeben und Datei-Download gleichzeitig – SELFHTML-Forum 2023-04-13T11:18:02Z https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807704#m1807704 Marcus forest@gmx.de 2023-04-05T13:40:50Z 2023-04-05T13:40:50Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hallo,</p> <p>mein PHP-Skript generiert eine XML-Datei, die auf den Client-Rechner übertragen werden soll. Gleichzeitig soll im Layout der Homepage eine Bestätigungsseite angezeigt werden.</p> <p>Bei mir startet der Download wie geplant, doch die Ausgabe im Browser bleibt unverändert. Klicke ich noch einmal auf den Weiter-Button, wird die Datei ein zweites Mal heruntergeladen.</p> <p>Wo liegt der Fehler?</p> <p>Viele Grüße Marcus</p> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807705#m1807705 Raketenwilli 2023-04-05T13:53:21Z 2023-04-05T14:11:59Z Aufgabe und Lösungshilfe <blockquote> <p>Wo liegt der Fehler?</p> </blockquote> <p>Ist doch klar! Du hast was falsch gemacht. Was Du falsch gemacht hast können wir nicht wissen.</p> <p><strong>Aufgabe:</strong> Überlege, warum das so ist. <strong>Lösungshilfe:</strong> Lese Deinen Beitrag und finde heraus, ob und welche Informationen Du preisgibst und dann, ob und wie Du uns dabei hilfst, Dir zu helfen.</p> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807706#m1807706 Der Martin 2023-04-05T13:56:27Z 2023-04-05T13:56:27Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hallo Marcus,</p> <blockquote> <p>mein PHP-Skript generiert eine XML-Datei, die auf den Client-Rechner übertragen werden soll. Gleichzeitig soll im Layout der Homepage eine Bestätigungsseite angezeigt werden.</p> </blockquote> <p>dann musst du einen Mechanismus bauen, der diese beiden Transfers nacheinander ausführt.</p> <blockquote> <p>Bei mir startet der Download wie geplant, doch die Ausgabe im Browser bleibt unverändert. Klicke ich noch einmal auf den Weiter-Button, wird die Datei ein zweites Mal heruntergeladen.</p> </blockquote> <p>Beschreib mal, wie du das realisiert hast. Und wie du meinst, dass das funktioniert.</p> <blockquote> <p>Wo liegt der Fehler?</p> </blockquote> <p>Im falschen Verständnis von HTTP. Hier gilt ganz klar: <strong>Ein</strong> Request, <strong>eine</strong> Response.</p> <p>Einen schönen Tag noch<br>  Martin</p> <div class="signature">-- <br> Kaffee ist nur schädlich, wenn Ihnen ein ganzer Sack aus dem 5. Stock auf den Kopf fällt. </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807708#m1807708 TS ts-self@online.de https://bitworks.de 2023-04-05T16:48:24Z 2023-04-05T17:18:03Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hello,</p> <blockquote> <p>mein PHP-Skript generiert eine XML-Datei, die auf den Client-Rechner übertragen werden soll. Gleichzeitig soll im Layout der Homepage eine Bestätigungsseite angezeigt werden.</p> <p>Bei mir startet der Download wie geplant, doch die Ausgabe im Browser bleibt unverändert. Klicke ich noch einmal auf den Weiter-Button, wird die Datei ein zweites Mal heruntergeladen.</p> </blockquote> <blockquote> <p>Wo liegt der Fehler?</p> </blockquote> <p>Beim Verständnis für das Protokoll:</p> <p><strong>Ein Request -> eine Response</strong></p> <p>Wäre schlimm, wenn das anders wäre!</p> <p>Die Erstantwort (Anzeigeseite) muss eine weitere öffnen, die den Download verursacht. Die wird aber dann eventuell als offene Seite stehen bleiben.</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt soviel Sonne, nutzen wir sie.<br> <a href="https://www.Solar-Harz.de" rel="nofollow noopener noreferrer">www.Solar-Harz.de</a><br> S☼nnige Grüße aus dem Oberharz </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807709#m1807709 Marcus 2023-04-05T17:47:13Z 2023-04-05T17:47:13Z Aufgabe und Lösungshilfe <p>Hm.</p> <p>Wie so oft, sind das zwei Seiten einer Medaille. Du hättest gern mehr Informationen, ich habe erst einmal keine Vorstellung, was relevant sein könnte. Klar, ich könnte jetzt das ganze Skript posten, doch das ist recht komplex und mind. 95% der Fülle ist für die Lösung irrelevant.</p> <p>Ich hoffe auf kleine Tipps, z. B. Habe ich darauf spekuliert, dass man zwei Header senden könnte - einen für das HTML- und einen für das XML-Format.</p> <p>1 Request - 1 Response. Klare Aussage, was ich möchte, scheint ohne Weiteres nicht möglich. Damit kann man was anfangen.</p> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807710#m1807710 Rolf B 2023-04-05T17:48:13Z 2023-04-05T17:48:13Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hallo TS,</p> <blockquote> <p>Die Erstantwort (Anzeigeseite) muss eine weitere öffnen, die den Download verursacht. Die wird aber dann eventuell als offene Seite stehen bleiben.</p> </blockquote> <p>Es gibt aber durchaus Seiten, die das hinkriegen. Es kommt eine Antwortseite und es startet automatisch ein Download. Ich hab das mal zu googeln versucht, die Tipps hießen: iframe, der den Download auslöst, oder ein window.open.</p> <p>Ich selbst habe sowas noch nicht gebaut und weiß nicht, was davon in welchem Brauser wie gut funktioniert. Auf jeden Fall wird man einen <a href="https://wiki.selfhtml.org/wiki/HTML/Attribute/download" rel="nofollow noopener noreferrer">Download-Link</a> als Fallback bereitstellen müssen.</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - obstruxi </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807717#m1807717 Raketenwilli 2023-04-06T06:14:53Z 2023-04-06T06:40:27Z Aufgabe und Lösungshilfe <blockquote> <p>Klar, ich könnte jetzt das ganze Skript posten, doch das ist recht komplex und mind. 95% der Fülle ist für die Lösung irrelevant.</p> </blockquote> <p><strong>Die irrelevanten Teile will auch keiner sehen.</strong></p> <p>Du wirst also hübsch selbst einen Test bauen müssen, der ohne jedes Geraffel zeigt, wie Du den Download hoffnungsfroh veranlasst (Link, Formular, Skript) und wie Du den Download zwar ebenso hoffnungsfroh, aber nicht mit dem gewünschtem Ergebnis bewerkstelligst (ggf. Skript, Einstellungen des Webservers.) <strong>Und dann zeigst Du den Test vor.</strong></p> <p>Möglicherweise stellt sich ja heraus, dass der Download und die Anzeige funktionieren würde, wenn es denn nicht in den 95%-Geraffel einen ganz anderen Skriptfehler gäbe.</p> <p><strong>Also wirst Du auch die Serverlogs und die Ausgaben der JS-Konsole in der Entwicklungsumgebung des Browser auf Fehlermeldungen untersuchen und ggf. diese und die betroffenen Zeilen der Ressourcen zeigen müssen.</strong></p> <p>Und sollten da Namen von Ressourcen (oft: Dateien) und Zeilennummern aufscheinen, dann musst Du diese Zeilen (und die relevanten zuvor) natürlich auch zeigen. <strong>Ohne Deinen Code zu kennen können wir Deinen Code nicht debuggen. So einfach ist das.</strong></p> <p><a href="https://wiki.selfhtml.org/wiki/Hilfe:Forum/Charta_des_SELFHTML-Forums#Tipps_f.C3.BCr_Fragende" rel="nofollow noopener noreferrer"><strong>Hier ist SELFhtml.org</strong></a>, das hat eine öffentlich bekannte IP-Adresse und nicht <a href="https://www.fastix.org/netztools?addr=getFuckingScriptNow.com&action=whois" rel="nofollow noopener noreferrer">getFuckingScriptNow.com</a>, welches durch seine Kontonummer charakterisiert ist.</p> <p>Deshalb hat keiner Lust, Dir oder anderen drölf Lösungen zu zeigen und sich von Dir gemäß des Lieds <a href="https://kindergeburtstag-spiele.de/wenn-der-topf-aber-nun-ein-loch-hat/" rel="nofollow noopener noreferrer">vom Topf und dem Loch</a> dann jeweils „sagen“ zu lassen, dass diese Lösung „nicht funktioniert“ - und das womöglich auch noch ohne Begründung. (Und der Erfahrung nach hin- und wieder sogar auf pampige Weise oder in einem herabwürdigendem Ton.)</p> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807719#m1807719 Raketenwilli 2023-04-06T07:22:14Z 2023-04-06T07:26:57Z XML zum Download anbieten <blockquote> <p>und einen für das XML-Format.</p> </blockquote> <p>Wenn Du einen Download bewerkstelligen willst, dann würde ich genau das vermeiden.</p> <p><strong>Sende für Downloads einen Content-Type „application/octet-stream“.</strong></p> <p>Grund: XML wollen viele der Browser ebenso wie PDF, PNG, HTML, Text ... selbst öffnen und darstellen. Nur bei obiger Angabe kann man einen Download - also das Angebot, die Datei zu speichern (oder dieses stillschweigend zu tun) „garantieren“.</p> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807715#m1807715 TS ts-self@online.de https://bitworks.de 2023-04-06T05:40:37Z 2023-04-06T05:40:37Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hello,</p> <blockquote> <blockquote> <p>Die Erstantwort (Anzeigeseite) muss eine weitere öffnen, die den Download verursacht. Die wird aber dann eventuell als offene Seite stehen bleiben.</p> </blockquote> <p>Es gibt aber durchaus Seiten, die das hinkriegen. Es kommt eine Antwortseite und es startet automatisch ein Download. Ich hab das mal zu googeln versucht, die Tipps hießen: iframe, der den Download auslöst, oder ein window.open.</p> </blockquote> <p>Schrieb ich doch: eine zweite Seite.<br> Ein iframe oder ein Popup <strong>sind</strong> ein weiteres Dokument.</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt soviel Sonne, nutzen wir sie.<br> <a href="https://www.Solar-Harz.de" rel="nofollow noopener noreferrer">www.Solar-Harz.de</a><br> S☼nnige Grüße aus dem Oberharz </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807718#m1807718 Marcus 2023-04-06T06:40:25Z 2023-04-06T06:40:25Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Prima, das ist doch schon mal ein konstruktiver Lösungsvorschlag. Der Hinweis auf 1 Request - 1 Response ist ja nachvollziehbar.</p> <p>Ich versuche mich mal in einer Umsetzung.</p> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807900#m1807900 Henry 2023-04-13T07:08:53Z 2023-04-13T07:08:53Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hallo Marcus,</p> <p>wie wäre das:</p> <pre><code class="block"><?php // XML generieren $xml = '<?xml version="1.0" encoding="UTF-8"?> <root> <element1>Wert 1</element1> <element2>Wert 2</element2> </root>'; // Dateinamen für XML generieren $file_name = 'example.xml'; // XML-Datei auf Server speichern file_put_contents($file_name, $xml); // Header für Dateidownload senden header('Content-Type: application/xml'); header('Content-Disposition: attachment; filename="' . $file_name . '"'); header('Content-Length: ' . filesize($file_name)); // XML-Datei an den Client senden readfile($file_name); // Bestätigungsseite anzeigen echo '<html> <head> <title>Bestätigung</title> </head> <body> <h1>XML-Datei erfolgreich generiert und heruntergeladen!</h1> </body> </html>'; // XML-Datei vom Server löschen unlink($file_name); ?> </code></pre> <p>Gruss<br> Henry</p> <div class="signature">-- <br> Meine Meinung zu DSGVO & Co:<br> „Principiis obsta. Sero medicina parata, cum mala per longas convaluere moras.“ </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807720#m1807720 Rolf B 2023-04-06T08:04:56Z 2023-04-06T08:04:56Z XML zum Download anbieten <p>Hallo Raketenwilli,</p> <p>d.h. ein Response-Header "Content-Disposition: attachment" kann vom Browser schnöde ignoriert werden?</p> <p>Man kann aber auch auf die Bestätigungsseite einen Button "Speichern" setzen, der in Wahrheit ein Link mit dem download-Attribut ist. Der sollte seit ein paar Jahren definitiv für einen Download sorgen, unabhängig vom Content-Disposition Header.</p> <p>Die Challenge ist noch, den Download nach dem Empfang der Bestätigungsseite automatisch anzustoßen. Dinge wie window.open() oder click() auf einen Link werden in JavaScript ja nur erlaubt, wenn das Script durch eine Benutzerinteraktion angestoßen wurde - und das ist in einer Ajax-Response oder in einem DOMContentLoaded- oder load-Event nicht der Fall. Geht das überhaupt? Wenn ja, wie genau? Ich denke, dass Browser sich mit Händen und Füßen gegen einen drive-by Download wehren.</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - obstruxi </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807722#m1807722 Raketenwilli 2023-04-06T08:31:47Z 2023-04-06T09:01:36Z XML zum Download anbieten <p>Ich hab mir das bei Ubuntu mal angesehen.</p> <p><a href="https://ubuntu.com/static/js/src/image-download.js" rel="nofollow noopener noreferrer">Da wird per Java-Script der Download via window.location.href='...' angestoßen</a> und sich von Anfang an durch Sichtbarmachen eines Danke-Abschnitts für den Download, das Vertrauen und so weiter bedankt.</p> <p>Da gibt es allen Ernstes einen Stapel JavaSkript-Funktionen, der dann in</p> <pre><code class="block bad language-js"><span class="token keyword">function</span> <span class="token function">delayStartDownload</span><span class="token punctuation">(</span><span class="token parameter">downloadLink<span class="token punctuation">,</span> delay</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> window<span class="token punctuation">.</span><span class="token function">setTimeout</span><span class="token punctuation">(</span><span class="token keyword">function</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> window<span class="token punctuation">.</span>location<span class="token punctuation">.</span>href <span class="token operator">=</span> downloadLink<span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> delay<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> </code></pre> <p>endet. Das Delay steht bei <strong>3 Sekunden</strong> (wahrscheinlich haben sich 3 von 4 Testern, <em>„die gegenüber dem Internet keine Vorbehalte oder Voreinstellung haben“</em> dafür entschieden, dass 3 Sekunden zu warten, etwas Tolles sei. Nur habe ich in der Zeit was besseres zu tun und meistens schon den Link zum direkten Download angeklickt, denn:</p> <p>Einen skriptfreien Downloadlink gibt es a) via</p> <pre><code class="block language-html"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>noscript</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>a</span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>...<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Klicken Sie hier um pla blubber<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>a</span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>noscript</span><span class="token punctuation">></span></span> </code></pre> <p>und b) dann nochmal bei oben gezeigtem „Danke“, a.k.a. <em>„Wenn der Download nicht funktioniert klicken sie bitte hier“</em>.</p> <p>Und das alles verpackt in 72 die Umwelt belastende Kilobytes…</p> <blockquote> <p>Ich denke, dass Browser sich mit Händen und Füßen gegen einen drive-by Download wehren.</p> </blockquote> <p>Naja: Immerhin fragt der Browser, wo er das hin tun soll. Und es gibt in diesem Dialog eine Taste zum Abbrechen.</p> <blockquote> <p>d.h. ein Response-Header "Content-Disposition: attachment" kann vom Browser schnöde ignoriert werden?</p> </blockquote> <p>Why not? Mindestens der IE hat (sofern ich mich recht erinnere) sogar den explizit gesetzten Content-Type manchmal ignoriert, den Mime-Type selbst untersucht und dann das getan, was er (aus Sicht eines vernünftigen und verständigen Benutzers) tunlichts nicht tun sollte ...</p> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807741#m1807741 Raketenwilli 2023-04-06T13:08:58Z 2023-04-06T13:20:46Z XML zum Download anbieten <blockquote> <blockquote> <p>d.h. ein Response-Header "Content-Disposition: attachment" kann vom Browser schnöde ignoriert werden?</p> </blockquote> <p>Why not? Mindestens der IE …</p> </blockquote> <p>Ich hab hier einen schönen Test-Case: (ist ein halbes Jahr alt...)</p> <p><a href="https://home.fastix.org/Tests/download_me.php" rel="nofollow noopener noreferrer">https://home.fastix.org/Tests/download_me.php</a></p> <p>Mist. Jetzt hat der Markus - wenn er nachdenkt - doch sein fertiges Skript von mir bekommen. Er muss nur von mir gepostetes und gezeigtes Zeug richtig zusammenstöpseln.</p> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807901#m1807901 Rolf B 2023-04-13T08:08:08Z 2023-04-13T08:08:08Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hallo Henry,</p> <p>meine Einschätzung ist: damit sendest Du XML und HTML in einem Datenstrom und speicherst beides zusammen in einer Datei.</p> <p>Daher füge ich mal ein Minus hinzu. Zur wiederholten Erklärung: das bedeutet "Das ist nicht hilfreich als Problemlösung". Es besagt nicht "Ich mag Henry nicht".</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - obstruxi </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807902#m1807902 Der Martin 2023-04-13T08:19:21Z 2023-04-13T08:19:21Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hallo,</p> <p>dein Lösungsvorschlag ist in mehreren Punkten kritikwürdig.</p> <p>Zum Beispiel: Warum speicherst du das XML-Dokument überhaupt als Datei? Wenn schon, kannst du den XML-String auch direkt an den Browser senden.</p> <p>Aber viel problematischer ist das hier:</p> <blockquote> <pre><code class="block language-php"><span class="token comment">// Header für Dateidownload senden</span> <span class="token function">header</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'Content-Type: application/xml'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">header</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'Content-Disposition: attachment; filename="'</span> <span class="token operator">.</span> <span class="token variable">$file_name</span> <span class="token operator">.</span> <span class="token string single-quoted-string">'"'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">header</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'Content-Length: '</span> <span class="token operator">.</span> <span class="token function">filesize</span><span class="token punctuation">(</span><span class="token variable">$file_name</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// XML-Datei an den Client senden</span> <span class="token function">readfile</span><span class="token punctuation">(</span><span class="token variable">$file_name</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// Bestätigungsseite anzeigen</span> <span class="token keyword">echo</span> <span class="token string single-quoted-string">'<html> <head> <title>Bestätigung</title> </head> <body> <h1>XML-Datei erfolgreich generiert und heruntergeladen!</h1> </body> </html>'</span><span class="token punctuation">;</span> <span class="token comment">// XML-Datei vom Server löschen</span> <span class="token function">unlink</span><span class="token punctuation">(</span><span class="token variable">$file_name</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token operator">?</span><span class="token operator">></span> </code></pre> </blockquote> <p>Per HTTP-Header kündigst du dem Client an: Hier kommt jetzt ein XML-Dokument mit einer Länge von soundsoviel Bytes. Das wird er dann auch empfangen und womöglich zum Speichern anbieten.</p> <p>Dass danach noch ein Stück HTML kommt, wird er aber ignorieren. Denn erstens ist die angekündigte Nutzdatenlänge erreicht, weiterlesen wäre also Unsinn; zweitens würde, selbst wenn die Länge entsprechend korrigiert wird, das Stück HTML noch dem XML-Dokument zugeschlagen.</p> <p>Einen schönen Tag noch<br>  Martin</p> <div class="signature">-- <br> Im Englischen hat eine Katze neun Leben. Im Deutschen vielleicht auch, aber nach Abzug der Steuern bleiben nur noch sieben übrig. </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807904#m1807904 Henry 2023-04-13T09:37:33Z 2023-04-13T09:37:33Z Experiment Künstliche Intelligenz <p>Hallo an alle Kritiker,</p> <p>ihr habt vollkommen recht. Das war ein Experiment, ich wollte eure ungefilterte objektive Meinung dazu haben. Heute läuft im TV ZDF Maybritt Illner 22:15 Uhr "Künstliche Intelligenz – Maschine gegen Mensch?" Vor allem zum Thema ChatGPT und da dachte ich mir, guter Zeitpunkt die geballte Schwarmintelligenz hier mal darauf zu jagen ohne Voreingenommenheit. Danke </p> <p><a href="/images/269d7240-d9de-11ed-be92-b42e9947ef30.png" rel="noopener noreferrer"><img src="/images/269d7240-d9de-11ed-be92-b42e9947ef30.png?size=medium" alt="" loading="lazy"></a></p> <p>Übrigens auch ausserhalb vom IT Bereich, oft katastrophale Falschaussagen, ja geradezu Lügen, die jede Suchmaschine besser beantwortet. So werden Gesetzestexte zitiert mit Paragraph und allem die völlig anderen Inhalt haben. Das Programm entschuldigst sich dann zwar, aber versucht gleichzeitig dem Fragesteller die Schuld zu geben.</p> <p><a href="/images/97d357e0-d9de-11ed-9cab-b42e9947ef30.png" rel="noopener noreferrer"><img src="/images/97d357e0-d9de-11ed-9cab-b42e9947ef30.png?size=medium" alt="" loading="lazy"></a></p> <p>Gruss<br> Henry</p> <div class="signature">-- <br> Meine Meinung zu DSGVO & Co:<br> „Principiis obsta. Sero medicina parata, cum mala per longas convaluere moras.“ </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807903#m1807903 TS ts-self@online.de https://bitworks.de 2023-04-13T09:03:58Z 2023-04-13T09:03:58Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hello Martin,</p> <p>außerdem darf man den Dateinamen nicht "unkastriert" an den Client senden. Da gibt es immer noch welche, die den dann wörtlich nehmen würden!</p> <p>Und man kann bei den meisten Browsern heute auch einen MIME-Type</p> <p><code>mixed</code></p> <p>senden. Dafür muss das Dokument dann genauso aufgebaut werden, wie für eine HTML-eMail (mixed, multipart).</p> <p>Käme also auf einen Versuch an, wieviele Browser das schon verstehen.</p> <p>Außerdem lohnt es sich mMn auch, nochmal die HTTP-Status zu durchforsten, was da an Responsetypen bereits vorgesehen ist.</p> <p>Der 401 akzeptiert nämlich durchaus eine nachfolgende HTML-Sequenz für den Fall, dass man auf "Abbrechen" o. ä. klickt.</p> <p>Andere Status (pl.) können das auch.</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt soviel Sonne, nutzen wir sie.<br> <a href="https://www.Solar-Harz.de" rel="nofollow noopener noreferrer">www.Solar-Harz.de</a><br> S☼nnige Grüße aus dem Oberharz </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807905#m1807905 Rolf B 2023-04-13T09:46:32Z 2023-04-13T09:46:32Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hallo TS,</p> <blockquote> <p>Der 401 akzeptiert nämlich durchaus eine nachfolgende HTML-Sequenz für den Fall, dass man auf "Abbrechen" o. ä. klickt.</p> </blockquote> <p>Das tun die 400er genau wie die 500er. Bei den 500ern hab ich damit viele Erfahrungen, eine ASP.NET Anwendung bringt nämlich bei einer ungefangenen Exception einen 500er und - sofern nicht für Produktion abgeschaltet - einen ausführlichen Fehler-Dump.</p> <p>Den MIME-Type "mixed" hätte ich gern näher erklärt. Ein Link auf ein Beispiel reicht…</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - obstruxi </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807906#m1807906 Rolf B 2023-04-13T09:49:45Z 2023-04-13T09:54:41Z Experiment Künstliche Intelligenz <p>Hallo Henry,</p> <h3> </h3><p>Nette Idee, uns eine ChatGPT Antwort ungefiltert vorzusetzen.</p> <p>Und ja, dieser Bot weist immer wieder gefährliche Lücken auf. Neulich hatten wir mal das Punkt-vor-Strich Thema. Angeblich ist das mittlerweile behoben.</p> <p>Für dein Codebeispiel hatte er entweder eine kaputte Vorlage, die er ungefiltert wiedergegeben hat, oder er hat frech zwei Vorlagen zusammengemixt. Das zeigt wieder einmal die Gefahr falscher Freunde. Das englische Wort "intelligence" kann, aber muss nicht mit „Intelligenz“ übersetzt werden. Gelegentlich kann AI auch für "Atrocious Imbecile" stehen.</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - obstruxi </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807907#m1807907 TS ts-self@online.de https://bitworks.de 2023-04-13T10:53:40Z 2023-04-13T10:53:40Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hello,</p> <blockquote> <blockquote> <p>Der 401 akzeptiert nämlich durchaus eine nachfolgende HTML-Sequenz für den Fall, dass man auf "Abbrechen" o. ä. klickt.</p> </blockquote> <p>Das tun die 400er genau wie die 500er. Bei den 500ern hab ich damit viele Erfahrungen, eine ASP.NET Anwendung bringt nämlich bei einer ungefangenen Exception einen 500er und - sofern nicht für Produktion abgeschaltet - einen ausführlichen Fehler-Dump.</p> </blockquote> <p>Das verstehe ich jetzt überhaupt nicht.</p> <p>Könntest Du das bitte nochmal ausführlich in deutscher Sprache erklären? Das würde mir helfen.</p> <p>Glück Auf<br> Tom vom Berg</p> <div class="signature">-- <br> Es gibt soviel Sonne, nutzen wir sie.<br> <a href="https://www.Solar-Harz.de" rel="nofollow noopener noreferrer">www.Solar-Harz.de</a><br> S☼nnige Grüße aus dem Oberharz </div> https://forum.selfhtml.org/self/2023/apr/05/php-seite-ausgeben-und-datei-download-gleichzeitig/1807908#m1807908 Rolf B 2023-04-13T11:18:02Z 2023-04-13T11:18:02Z PHP: Seite ausgeben und Datei-Download gleichzeitig <p>Hallo TS,</p> <p>reden wir aneinander vorbei? Ich spreche davon, dass diese Analyse nicht wirklich nötig ist, denn ein Webserver kann eigentlich bei jedem HTTP Status eine Antwort mitsenden. Die wird zwar nicht unbedingt angezeigt - das hängt aber auch am Browser.</p> <p>Was ich dann schreiben wollte, war: Dieser Inhalt kann z.B. aus einem Fehlerbericht bestehen, wenn das Programm abgestürzt ist, das den Inhalt generieren sollte.</p> <p>Beispiel mit PHP: Eine Funktion, die mittels set_error_handler, set_exception_handler oder register_shutdown_function eingerichtet wurde, könnte je nach Lage den HTTP Status auf 500 setzen und eine HTML Seite mit einem Fehlerbericht und Stacktrace ausgeben (natürlich nur, solange headers_sent() false zurückgibt, sonst kann man keinen Response-Status mehr setzen).</p> <p>In ASP.NET kann das <a href="https://stackoverflow.com/questions/40166100/make-asp-net-error-page-point-to-the-outermost-exception" rel="noopener noreferrer">so aussehen</a> - dem fällt das leicht, weil die .net Runtime immer unter dem User-Code steckt…</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - obstruxi </div>