PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Formular geht nicht (http://www.selfphp.de/forum/showthread.php?t=14188)

Hype2002 09.08.2006 10:54:34

Formular geht nicht
 
Hi,

ich lerne seit gestern php und habe ein problem.
ich finde einfach den fehler in meinem code nicht, wäre schön wenn mir jemand die richtige lösung geben könnte!

Gruß Andreas

CODE:

<?php


if (empty($vorname)) {
$error = 1;
$msg = "Vorname vergessen";
}

if (empty($nachname)) {
$error = 1;
$msg. = "Nachname vergessen";
}

if (empty($email)) {
$error = 1;
$msg. = "E-Mail vergessen";
}

if $error == 1) {
echo $msg
}
else
{


?>


<html>
<body>


<u><b>Sie haben folgendes eingegeben:</b></u>

<br>
<br>

<?php
echo "Vorname: " ;
echo "$vorname <br>\n" ;
echo "Nachname: " ;
echo "$nachname <br>\n" ;
echo "E-Mailadresse: " ;
echo "$email <br>\n" ;
?>


</body>
</html>

<?
}
?>

Andes 09.08.2006 11:13:46

AW: Formular geht nicht
 
Was funktioniert den nicht?
Deine Variable $msg ist falsch definiert. Sobald Vorname vorhanden ist und die anderen Angaben nicht eingegeben wurden. Ist deine Variable $msg nicht bekannt.
Diese solltest du vor deinen if else definieren und bei Vorname sie wie bei den andren füllen.

SpiderPOH 09.08.2006 11:13:58

AW: Formular geht nicht
 
Was passiert denn ?
Fehlermeldungen ?

Hype2002 09.08.2006 11:19:12

AW: Formular geht nicht
 
hi,
ups habe vergessen was nicht funktioniert.
also eig funktioniert alles nicht, ich habe eine formular seite auf der man alles eingeben kann (das klappt alles) und danach weitergeleitet wird, nun soll eine meldung erscheinen, aber nur wenn man etwas vergessen hat einzugeben.
und das will einfach nicht funktionieren.

Andes 09.08.2006 11:34:23

AW: Formular geht nicht
 
Setzt mal an den Anfang deines Scripts 'error_reporting(E_ALL)' und schau was PHP zu melden hat und poste eventuelle Fehlermeldungen. Dein Formular poste auch gleich mit. Ansonsten kann man nur raten.
Benutze in Zukunft die Option PHP über dem Textfeld, wenn du Scriptteile einstellst und denke an Einrückungen. Dein Script ist zwar nicht so umfangreich, dass man es nicht lesen kann. Aber besser du gewöhnst es dir gleich an.

Hype2002 09.08.2006 11:44:34

AW: Formular geht nicht
 
Hi,
habe error_reporting(E_ALL) an den anfang gesetzt, kommt aber nichts.
hier mein formular:

PHP-Code:

<html>
<
body>


<
u><b>Bitte geben Sie Ihre Daten ein:</b></u>

<
br>
<
br>

<
form action="test2.php" method="post">
<
input name="vorname"Vorname <p>
<
input name="nachname"Nachname <p>
<
input name="email"E-Mailadresse <p>
<
input type="submit" value="OK"
<
input type="reset" value="Zurücksetzen">


</
body>
</
html


Opendix 09.08.2006 11:44:45

AW: Formular geht nicht
 
PHP-Code:

if $error == 1) {
echo 
$msg 

hier fehlt doch ne klammer? :S
Weiter würd eich dir empfehlen auf Variabeln mit $_POST[] zuzugreiffen. Auf deinem Testserver scheint die optione register_globals in der php.ini auf on zu sein sonst würde dein Script sicherlich nicht funktionieren!

und wenn du dann $_POST bzw. $_GET verwendest gibt (sollte es nicht funktionieren) mal deren Inhalt mit var_dump() aus!

PHP-Code:

echo "<pre>";
va_dump($_POST);
echo 
"</pre>"


Hype2002 09.08.2006 11:55:39

AW: Formular geht nicht
 
die klammer hab ich dazu gemacht und die variablen habe ich schon alle geändert
sehen jetzt so aus

PHP-Code:

<?php 
echo "Vorname: " 
echo 
$_post['vorname']."<br>\n"
echo 
"Nachname: "
echo 
$_post['nachname']."<br>\n"
echo 
"E-Mailadresse: " 
echo 
$_post['email']."<br>\n"
?>

wo soll ich denn den va_dump eingeben?

xabbuh 09.08.2006 11:58:56

AW: Formular geht nicht
 
Das superglobale Array hat den Namen $_POST nicht $_post (auf Groß- und Kleinschreibung achten). An dieser Stelle sollte dir PHP allerdings auch schon eine "undefined variable" anmeckern, wenn du error_reporting auf E_ALL gesetzt hast.
var_dump() kannst du einfach mal direkt vor diesen von dir geposteten Scriptzeilen aufrufen.

Hype2002 09.08.2006 12:10:05

AW: Formular geht nicht
 
danke für die vielen schnellen antworten.
es funktioniert trotzdem noch nicht.
kann es vielleicht auch am server liegen? das ist nämlich der server meiner firma.


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:01:28 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.