Also ich habe folgendes Formular:
[html]
Vorname: |
|
Spitzname: |
|
Alter: |
|
Geburtstag: |
|
Alles korrekt? |
|
[/html]
Und wenn ich auf den Submit-Button gehe kommt in bewerbung.php die Meldung "Bitte alle Felder ausfüllen obwohl ich das gemacht habe. Hier mal die Datei bewerbung.php
[php]<?php
$vorname = $_POST[„vorname“];
$spitzname = $_POST[„spitzname“];
$alter = $_POST[„alter“];
$bd_day = $_POST[„tag“];
$bd_month = $_POST[„monat“];
$bd_jahr = $_POST[„jahr“];
$empfaenger = „support@webgigant.de“;
$absender = „noreply@jvdge.de.vu“;
$betreff = „Neue Bewerbung ist eingetroffen“;
$message = „Hallo Jvdge! Mein Name ist $vorname aber ich werde oft $spitzname genannt. Ich bin $alter Jahre alt und mein Geburtstag ist der $bd_day . $bd_month . $bd_year. Ich üwrde mich sehr freuen, wenn du mir eine Antwort schreibst.“;
if ($vorname == „“ OR $spitzname == „“ OR $alter == „“)
{
echo „<?php";
echo "email($empfanger, $betreff, $message, $from);";
echo "";
echo "";
echo "";
echo "Jvdge :: Fehler";
echo "";
echo "";
echo "";
echo "";
echo "
";
echo "Navi";
echo " ";
echo "
";
echo "
";
echo "
Fehler
";
echo "Bitte alle Felder ausfüllen!";
echo "
";
echo "
";
echo "News";
echo "";
echo "
";
echo "";
echo "";
}
else
{
echo "<?php";
echo "mail($empfanger, $betreff, $message, $from);";
echo "?>“;
echo „“;
echo „“;
echo „“;
echo „Jvdge :: Mitteilung“;
echo „“;
echo „“;
echo „“;
echo „“;
echo „
“;
echo „Navi“;
echo „ “;
echo „
“;
echo „
“;
echo „
Mitteilung
“;
echo „Dein Bewerbungsformular wurde gesendet“;
echo „
“;
echo „
“;
echo „News“;
echo „“;
echo „
“;
echo „“;
echo „“;
}
?>[/php]
was soll das hier:
[php]
echo „<?php";
echo "mail($empfanger, $betreff, $message, $from);";
echo "?>“;
[/php]
?
so kanns ja gar nicht gehen.
Nils aka XraYSoLo
habs verbessert, aber die inhalte werden bei mir zumindest nicht übergeben. Ihr könnts ja selbst mal probieren http://gonewild.funpic.de/divlay/form_progger.html
die überprüfung, ob die felder leer sind, sollte mit isset() oder empty() machen. vorallem, zeig’ uns mal die meldung, bie beim sendeversuch kommt.
Nils aka XraYSoLo
Die Meldung ist von mir programmiert. „Bitte alle Felder ausfüllen“
ich mein’ auch die automatische meldung (sofern die existiert).
Nils aka XraYSoLo
also keine…
überprüf’ mal, ob die variablen ordnungsgemäß heißen.
dann wäre lesen auch nicht schlecht…
→ http://www.html.de/showthread.php?t=7464
Nils aka XraYSoLo
Habe alles überprüft aber es funktioniert immer noch nicht. Ich habe den Code jetzt so geändert, dass nochmal vorher eine Prüfung erfolgt, ob alles richtig ist. Aber die Daten werde immer noch nicht weitergegeben
register_globals beachtet?
Nils aka XraYSoLo
Ja ich habe mit $_POST[„name“] gearbeitet. Mit $_HTTP_POST_VARS habe ich es auch schon versucht aber es tut sich nichts.
zeig’ bitte nochmal den ganzen code her (am besten bei http://nopaste.php-q.net eingeben und den link hier posten).
Nils aka XraYSoLo
ich sagte doch, das hier weg:
[php]
echo „<?php“;
echo „email($empfanger, $betreff, $message, $from);“;
[/php]
du kannst php doch nicht mit php einleiten
das hier ist falsch:
[php]
if (empty($vorname) OR empty($spitzname) OR empty($alter))
[/php]
die variablen in mail() sind allgemein falsch.
Nils aka XraYSoLo
Hier die verbesserte Version:
http://nopaste.php-q.net/235703
Was ist denn an empty() falsch?
die syntax. du kannst mit empty() je nur eine variable checken.
[php]
<?php
if(empty($_POST['field_1']) || empty($_POST['field_2']))
{
//aktion1
}
else
{
//aktion2
}
?>
[/php]
und das mit register_globals haste dir auch net durchgelesen, sonst wüsstest du, dass man hier keine variablen, sondern nur superglobale variablen absendet.
Nils aka XraYSoLo
sag’ mal, wo testest du das eigentlich?
Nils aka XraYSoLo
Ich verbesser die Datei immer und probiers dann aus, nachdem ichs hochgeladen habe.
Aber gebracht hat es mir ÜBERHAUPT NICHTS. Es wird immer noch die Meldung „Bitte alle Felder ausfüllen“ angezeigt. -.-