problème sur un form

Invité
Invité n'ayant pas de compte PHPfrance

09 avr. 2005, 17:50

bonjour à tous

voila j'ai un projet a faire

j'ai fais des scripts à mon iut (developpé sous windows et hébergé sous unix) et j'ai fais d'autres scripts sur mon portable avec windows et "hébergé" avec easyphp

lorsque j'ai voulu rassembler les scripts (ils marchaient tous), les scripts avec des forms rapatriés de mon iut ne marchaient pas :

problème :
Notice: Undefined variable: envoyer in c:\program files\easyphp1-8\www\login.php on line 14
Notice: Undefined variable: envoyer in c:\program files\easyphp1-8\www\login.php on line 16
la source du script qui me cause ce problème est là : http://www.phpfrance.com/irc/TheWall/index.php?wall=120
(le fichier s'appelle login.php)

je ne trouve aucun erreur ! le form est semblable à un script qui marche trés bien...
est ce que le form ne veut pas se fermer ? je ne comprends pas du tout

merci de m'éclairer :)

ant
Eléphant du PHP | 161 Messages

10 avr. 2005, 02:54

Quand php te signale un notice Undefined variable, ca veut dire que
t'utilises une variable qui n'a pas été définie auparavant.

Donc assure toi que ta variable $envoyer soit bien définie.
D'ou récupères tu cette variable, et comment ?

Par POST, par session ?...

frigg
Invité n'ayant pas de compte PHPfrance

10 avr. 2005, 11:41

désolé d'avoir oublier le nick
echo "<html><body bgcolor='potatoe'>";
echo "<center>Identification</center><br><br>";
echo "<p><font color='white'><i>Vous êtes priés de remplir tous les champs</i></font><p>";
echo "<form method='POST' action='login.php'><center>";
echo "Pseudo :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='text' name='pseudo'><br>";
echo "Password :<input type='password' name='pass'><br>";
echo "<input type='submit' name='envoyer' value='enregistrer'>";
echo "</form>";
oui je récupere la variable par POST

sur le lien ya le code de mon script
http://www.phpfrance.com/irc/TheWall/index.php?wall=120

ant
Eléphant du PHP | 161 Messages

10 avr. 2005, 16:29

Si tu la récupères par post, rien dans ton code ne le précise :

essaye ceci plutôt:
$envoyer = $_POST['envoyer'];
echo 'envoyer :'. $envoyer;

if (isset ($envoyer) && ($envoyer=='enregistrer')) {
....

}

Sinon la première fois que ton script login.php est lancé, dans ton code tel qu'il est, c'est normal que tu aies cet avertissement puisque $envoyer n'est pas défini.

Tu peux aussi désactiver les "notices " dans ton php via la section error_reporting (qui doit être défini à E_ALL vraisemblablement chez toi).

frigg
Invité n'ayant pas de compte PHPfrance

10 avr. 2005, 17:00

ok je vais essayer

merci bcp de ton aide