Probleme mit Formularausgabe
Hallo zusammen
kann mir jemand sagen was hier nicht richtig ist?
Hallo zusammen
kann mir jemand sagen was hier nicht richtig ist?
kontakt.html
ausgabe.php
Ich hoffe ihr könnt mir weiterhelfen.
Besten Dank
kann mir jemand sagen was hier nicht richtig ist?
Hallo zusammen
kann mir jemand sagen was hier nicht richtig ist?
kontakt.html
<tr>
<td class="field_title">Demontage Ladeort:</td>
<td>
<select name="field24" id="field24" size="" class="select">
<option value=" "> </option>
<option value="keine Demontage">keine Demontage</option>
<option value="1 Möbelstück">1 Möbelstück</option>
<option value="2 Möbelstücke">2 Möbelstücke</option>
<option value="3 Möbelstücke">3 Möbelstücke</option>
<option value="4 Möbelstücke">4 Möbelstücke</option>
<option value="5 Möbelstücke">5 Möbelstücke</option>
<option value="6 Möbelstücke">6 Möbelstücke</option>
<option value="7 Möbelstücke">7 Möbelstücke</option>
</select>
</td>
</tr>
<?php
$nachname = @$_POST["nachname"];
$email = @$_POST["email"];
$tel = @$_POST["tel"];
$betreff = @$_POST["betreff"];
$nachricht = @$_POST["nachricht"];
$field24 = @$_POST["field[]"];
# Inhalt der Danke E-Mail:
$inhalt ="Hallo $nachname,\nVielen Dank für Ihren Besuch bei $url. \n
Wir haben folgende Nachricht erhalten:\n\n
======== Beginn Nachricht =========\n\n
$nachricht\n\n
Demontage Ladeort: $field24
======== Ende Nachricht ==========\n\n;
Besten Dank
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 118258
Url: https://administrator.de/contentid/118258
Ausgedruckt am: 22.11.2024 um 18:11 Uhr
6 Kommentare
Neuester Kommentar
müsste glaube ich
$field24 = @$_POST["field24[]"];
statt
$field24 = @$_POST["field[]"];
heissen
$field24 = @$_POST["field24[]"];
statt
$field24 = @$_POST["field[]"];
heissen
Was IST denn da nicht richtig ?
Eigentlich sollte ich hier aufhören zu schreiben aber... ...mitleid.
Was hältst du den davon beim Nächstem mal...
Hey, Ihr wollt doch was von uns... wieso kommt dann nur ein "Machmal richtig!" ?
So, erst einmal frage ich mich, warum die das <select> "field24" genannt hast ?
Weiter frage ich mich ob du dir der Funktion des "@" (Error Controle Operators - PHP Manual) bewusst bist ?
Und zu guter letzt:
"Alle Eingaben die von einem Benutzer kommen (egal ob User oder Admin) sind Böse und müssen überprüft werden !"
Tipp:
Schau dir mal die beiden Funktionen print_r - PHP Manual und var_dump - PHP Manual an , die können sehr nützlich bei der Fehlersuche sein ;)
~Arano
Eigentlich sollte ich hier aufhören zu schreiben aber... ...mitleid.
Was hältst du den davon beim Nächstem mal...
- ...uns mitteilst was du den vorhast (welche Funktion das Script übernehmen soll)
- ...was das Script __nicht__ macht (ggf. Angabe der Fehlermeldung)
- ...die Formatierungshilfe dieses Forums verwendest um Programmcode für den Helfer lesbarer und somit den gesamten Beitrag übersichtlicher zu gestalten.
Hey, Ihr wollt doch was von uns... wieso kommt dann nur ein "Machmal richtig!" ?
So, erst einmal frage ich mich, warum die das <select> "field24" genannt hast ?
- ist der Name selbst dafür doch recht unpassend und
- durch die beiden eckigen Klammern wird $_POST['field24'] in PHP zu einem Array (was ja nur wirklich Sinn bei einer Mehrfachauswahl machen würde.
Weiter frage ich mich ob du dir der Funktion des "@" (Error Controle Operators - PHP Manual) bewusst bist ?
Und zu guter letzt:
"Alle Eingaben die von einem Benutzer kommen (egal ob User oder Admin) sind Böse und müssen überprüft werden !"
Tipp:
Schau dir mal die beiden Funktionen print_r - PHP Manual und var_dump - PHP Manual an , die können sehr nützlich bei der Fehlersuche sein ;)
~Arano
kann mir jemand sagen was hier nicht richtig ist?
Du hast dich nicht an die Formatierungsregeln im Forum gehalten - Der Link ist sogar rot hervorgehoben.
Abgesehen davon ist dein Skript der totale Horror und zeugt von vollkommner unverständnis - OK, sind alles die üblichen Anfängerfehler
<select name="field24" id="field24" size="" class="select">
mit
field24
erzeugst du einen zweidimensionalen Speicher für einen eindimensionalen Wert. Oder auf Deutsch: Ein select-Feld kann immer nur einen Wert ausgewählt haben (Ja, es gibt auch ausnahmen), deshalb macht es in 98% der Fälle keinen Sinn, das Feld als Array zu übergeben.Zur Verdeutlichung.
Was du derzeit bekommst:
$_POST => array(
feld24 => array(
0 => "1 Möbelstück"
)
)
Was du eigentlich willst (?):
$_POST => array(
feld24 => "1 Möbelstück"
)
Also, schmeiss die
an deinem feld24 raus und du bist schon ein Stück weiter (dein Code enthält aber noch andere Fehler)Grüße
Max
Ja, so ist das doch schon besser....
nur Hinweise
So, gute Nacht
~Arano
nur Hinweise
- Das was du von einem Kollegen bekommen hast und das was du schon für die anderen Felder benutzt hast sind ziemlich identisch, findest du nicht auch ? Könnte sein das es funktioniert...
- Was spricht gegen ausprobieren und
- Hast du unsere Beiträge gelesen ? Dort geben wir die eine Antwort auf diese Frage: "Ich sollte einfach die [ ] weglassen??"
So, gute Nacht
~Arano
die '' benötigst Du nur wenn der Benutzer die Möglichkeit haben soll mehrere Optionen auszuwählen:
.. oder Bestimmte Formular Elemente gruppiert werden sollen
wenn Du nur das Problem hast das Array in deine Email zu speichern:
<select name="feld" multiple="multiple">
<option value=""> </option>
<!-- ... -->
</select>
.. oder Bestimmte Formular Elemente gruppiert werden sollen
<input type="checkbox" name="feld" value="1" />
<input type="checkbox" name="feld" value="2" />
<input type="checkbox" name="feld" value="3" />
wenn Du nur das Problem hast das Array in deine Email zu speichern:
echo 'FELD24: ' . print_r( $_POST['feld24'], true ) . "\n";