Formular Daten auslesen – SELFHTML-Forum Forum als Ergänzung zum SELFHTML-Wiki und zur Dokumentation SELFHTML https://forum.selfhtml.org/self?srt=yes Formular Daten auslesen Fri, 24 Apr 15 06:57:03 Z https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638527?srt=yes#m1638527 https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638527?srt=yes#m1638527 <p>Hallo,</p> <p>Ich habe eine Formularseite erstellt. Es geht darum, dass man da seine Daten einträgt (wie beim Profil) Sowas halt wie was die Lieblingstiere sind usw. Nun will ich einen Button machen auf den man klicken kann und welcher die Daten des Formulars zusammenfasst ohne das man noch die umrandungen der einzelnen Inputfelder sieht und einen Button der eine Skizze des Formulars ist nur halt mit den festen einträgen (so das man die sachen halt nach Wunsch drucken oder speichern kann). Ich hab aber leider keine Ahnung wie das geht, muss ich dazu eine neue Seite erstellen? Aber wie verlinke ich es so, dass es eine Zusamenfassung speichert?</p> <p>Kennt wer einen Wiki-Link der einem das Schritt für schritt erklärt? Ich weiß leider nicht so genau was ich in der suche eingeben kann damit das gewünschte rauskommt, ich habs schon versucht</p> Formular Daten auslesen Fri, 24 Apr 15 08:55:18 Z https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638555?srt=yes#m1638555 https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638555?srt=yes#m1638555 <p>@@Inai</p> <blockquote> <p>Nun will ich einen Button machen auf den man klicken kann und welcher die Daten des Formulars zusammenfasst</p> </blockquote> <p>Der Button ist der Submit-Button des Formulars.</p> <blockquote> <p>Ich hab aber leider keine Ahnung wie das geht, muss ich dazu eine neue Seite erstellen? Aber wie verlinke ich es so, dass es eine Zusamenfassung speichert?</p> </blockquote> <p>Per <code>action</code>-Attribut des <code>form</code>-Elements. Da steht der URI der Stelle drin, welche die eingegebenen Daten entgegennimmt. Die Seite kann die Daten auch wieder ausgeben.</p> <p>formular.html:</p> <pre><code class="block language-html"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>form</span> <span class="token attr-name">action</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>verarbeitung.php<span class="token punctuation">"</span></span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>label</span> <span class="token attr-name">for</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>lieblingstier<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Lieblingstier:<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>label</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>input</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>lieblingstier<span class="token punctuation">"</span></span> <span class="token attr-name">name</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>lieblingstier<span class="token punctuation">"</span></span><span class="token punctuation">/></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>label</span> <span class="token attr-name">for</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>lieblingspflanze<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>Lieblingspflanze:<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>label</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>input</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>lieblingspflanze<span class="token punctuation">"</span></span> <span class="token attr-name">name</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>lieblingspflanze<span class="token punctuation">"</span></span><span class="token punctuation">/></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>button</span><span class="token punctuation">></span></span>Absenden<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>button</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>form</span><span class="token punctuation">></span></span> </code></pre> <p>verarbeitung.php:</p> <pre><code class="block language-php"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>p</span><span class="token punctuation">></span></span>Du hast angegeben:<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>p</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>dl</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>dt</span><span class="token punctuation">></span></span>Lieblingstier:<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>dt</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>dd</span><span class="token punctuation">></span></span><span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token keyword">echo</span> <span class="token function">htmlspecialchars</span><span class="token punctuation">(</span><span class="token variable">$_GET</span><span class="token punctuation">[</span><span class="token string single-quoted-string">'lieblingstier'</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token delimiter important">?></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>dd</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>dt</span><span class="token punctuation">></span></span>Lieblingspflanze:<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>dt</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>dd</span><span class="token punctuation">></span></span><span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token keyword">echo</span> <span class="token function">htmlspecialchars</span><span class="token punctuation">(</span><span class="token variable">$_GET</span><span class="token punctuation">[</span><span class="token string single-quoted-string">'lieblingspflanze'</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token delimiter important">?></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>dd</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"></</span>dl</span><span class="token punctuation">></span></span> </code></pre> <p>Beachte, dass sämtliche <del>eingegeben</del> Daten vor der Ausgabe in HTML mit <code class="language-php"><span class="token function">htmlspecialchars</span><span class="token punctuation">(</span><span class="token punctuation">)</span></code> behandelt werden müssen! Ansonsten klaffen Sicherheitslöcher auf.</p> <p><em>Anmerkung von dedlfix: Da Gunnar es nicht lernt, dass nicht nur Eingabedaten sondern sämtliche Daten kontextgerecht zu behandeln sind, habe ich mir erlaubt, ein <del></del> einzufügen.</em></p> <blockquote> <p>ohne das man noch die umrandungen der einzelnen Inputfelder sieht und einen Button der eine Skizze des Formulars ist nur halt mit den festen einträgen (so das man die sachen halt nach Wunsch drucken oder speichern kann).</p> </blockquote> <p>Wenn es dir nur um die Formatierung des Ausdrucks des Formulars geht, kannst du die Rahmen der Eingabefelder auch für den Ausdruck mit CSS entfernen:</p> <pre><code class="block language-css"><span class="token atrule"><span class="token rule">@media</span> print</span> <span class="token punctuation">{</span> <span class="token selector">input</span> <span class="token punctuation">{</span> <span class="token property">border</span><span class="token punctuation">:</span> none<span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre> <p>LLAP</p> <div class="signature">-- <br> „Talente finden Lösungen, Genies entdecken Probleme.“ (Hans Krailsheimer) </div> Erste Schritte der Client-Server-Programmierung mit HTML und PHP Fri, 24 Apr 15 18:01:05 Z https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638604?srt=yes#m1638604 https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638604?srt=yes#m1638604 <p>Liebe Mitdenker, liebe Wissende, liebe Neugierige,</p> <blockquote> <p>Ich habe eine Formularseite erstellt.</p> </blockquote> <p>Zeig einfach mal den relevanten Quelltext.<br> Tipp: am Anfang kann der Quelltext meistens auf besondere Styles verzichten, da geht es erst einmal nur um die Funktionalität.</p> <blockquote> <p>Es geht darum, dass man da seine Daten einträgt (wie beim Profil) Sowas halt wie was die Lieblingstiere sind usw.</p> </blockquote> <p>Das sehen wir dann, wenn Du uns das Beispiel postest</p> <blockquote> <p>Nun will ich einen Button machen auf den man klicken kann und welcher die Daten des Formulars zusammenfasst ohne das man noch die umrandungen der einzelnen Inputfelder sieht und einen Button der eine Skizze des Formulars ist nur halt mit den festen einträgen (so das man die sachen halt nach Wunsch drucken oder speichern kann).</p> </blockquote> <p>Wie man das nachher in der Antwort des Servers mit HTML auszeichnen kann, hat Dir Gunnar schon angedeutet. Aber wir sollten es behutsam angehen lassen.</p> <blockquote> <p>Ich hab aber leider keine Ahnung wie das geht, muss ich dazu eine neue Seite erstellen? Aber wie verlinke ich es so, dass es eine Zusamenfassung speichert?</p> </blockquote> <p>Da Du "PHP" schon selber ins Spiel bringst, sollten wir Dir grundsätzlich die Funktionsweise von Client-Server-Applikationen nahebringen. Wenn Du das dann verstanden hast, beschäftigen wir uns mit dem Aufbau eines "Affenformulares", mit Escaping und Kontextbehandlung, mit dem Wegschreiben (der Speicherung) von Daten, mit dem Holen und Suchen von Daten, mit der Datenbank, usw.</p> <p>Willst Du das? Dann sag einfach "ja" ;-)</p> <blockquote> <p>Kennt wer einen Wiki-Link der einem das Schritt für schritt erklärt?</p> </blockquote> <p>Es gibt ein inzwischen auch schon sehr angewachsenes Tutorial von <a href="http://tut.php-quake.net/de/" rel="nofollow noopener noreferrer">quake.net für PHP & Co</a>, das ich immer noch empfehlen mag. Das musst Du aber wirklich Seite für Seite von Anfang an durcharbeiten.</p> <p>Ich weiß leider nicht so genau was ich in der suche eingeben kann damit das gewünschte rauskommt, ich habs schon versucht</p> <p>Einen Suchbegriff habe ich Dir schon genannt: Affenformular<br> Den kannst Du dir mal vornehmen, wenn Du die ersten Schritte verstanden hast.</p> <p>Spirituelle Grüße<br> Euer Robert<br> robert.r@online.de</p> <div class="signature">-- <br> Möge der wahre Forumsgeist ewig leben! </div> Formular Daten auslesen Fri, 24 Apr 15 09:40:48 Z https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638566?srt=yes#m1638566 https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638566?srt=yes#m1638566 <p>Hey,</p> <p>super danke, genau das meine ich so ich habe nun ein Beispielprogramm erstellt an dem ich die sachen Teste (ich will nicht direkt am eigentlichen Code die sachen ändern, was wenn es nicht klappt und ich alles versaue) ich habe also das hier geschrieben und in meine 'index.html" abgespeichert:</p> <pre><code> <form action="new.php" method="post"> <h2>Coose your Car</h2> <hr> Chooose Car Make: <select id='slct1' name="slct1" style="width:3em" onChange="populate('slct1','slct2')"> <option value=""></option> <option value="Chevy">Chevy</option> <option value="Dodge">Dodge</option> <option value="Ford">Ford</option> </select> <hr> Chooose Car Make: <select id='slct2' name='slct2' style="width:3em" onChange="populate1('slct2','slct3')"> </select> <hr> Chooose Car Make: <select id='slct3' name='slct3'> </select> <hr> <input type="submit" name="submit" value="Submit"> </form> </code></pre> <p>Dazu habe ich eine neue php seite erstellt mit dem namen "new.php" Diese ist aber im Moment leer, ich habe noch nie in php programiert. Es funktioniert leider nicht, dass ich einfach die index.html Seite aufrufe und auf submit klicke. da kommt dann nur ein "Keine Daten empfangen". Muss ich was auf dieser php seite eintippen? Falls ja, könntest du mir bitte sagen was? Ich habe in youtube nach videos gesucht aber die erklären meist nur soweit wie ich es schon weiß und dann agen die immer: "Der rest ist höhere programmierung, den heben wir uns dann für später auf" und dann haben die nichts weiter hochgeladen. Oder die machen jede Seite in php und dann müsste ich meinen code auch wieder complett neu umschreiben (und ich weiß im moment nicht wie)</p> Formular Daten auslesen Fri, 24 Apr 15 17:31:47 Z https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638601?srt=yes#m1638601 https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638601?srt=yes#m1638601 <p>Moin!</p> <blockquote> <p><em>Anmerkung von dedlfix: Da Gunnar es nicht lernt, dass nicht nur Eingabedaten sondern sämtliche Daten kontextgerecht zu behandeln sind, habe ich mir erlaubt, ein <del></del> einzufügen.</em></p> </blockquote> <p>Kann man so allgemein auch nicht sagen, hier ein Beispiel:</p> <pre><code class="block"><?php echo `sudo hardinfo -r -f html -m computer.so -a`; #*) ?> </code></pre> <p>oder, als hardinfo.cgi:</p> <pre><code class="block">#!/bin/sh sudo hardinfo -r -f html -m computer.so -a; #*) </code></pre> <p>Ein</p> <pre><code class="block"><?php echo htmlentities(`sudo hardinfo -r -f html -m computer.so -a`); #*) ?> </code></pre> <p>würde ziemlichen "Salat" erzeugen ... "kontextgerecht" behandeln heisst hier: nicht behandeln.</p> <p>*) /etc/sudoers muss das natürlich erlauben)</p> <p>Jörg Reinholz</p> Formular Daten auslesen Fri, 24 Apr 15 18:25:11 Z https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638605?srt=yes#m1638605 https://forum.selfhtml.org/self/2015/apr/24/formular-daten-auslesen/1638605?srt=yes#m1638605 <p>Tach!</p> <blockquote> <blockquote> <p><em>Anmerkung von dedlfix: Da Gunnar es nicht lernt, dass nicht nur Eingabedaten sondern sämtliche Daten kontextgerecht zu behandeln sind, habe ich mir erlaubt, ein <del></del> einzufügen.</em></p> </blockquote> <p>Kann man so allgemein auch nicht sagen, hier ein Beispiel: [HTML-Code in ein HTML-Dokument einfügen]</p> </blockquote> <p>Wenn du HTML mit HTML zusammenführst, dann ist da kein Kontextwechsel. Den musst du bereits beachtet haben, wenn du die Daten in die einzelnen HTML-Teile einfügst.</p> <p>dedlfix.</p>