HELP EditPlus (nioub inside)

HELP EditPlus (nioub inside) - PHP - Programmation

Marsh Posté le 28-01-2004 à 10:26:15    

Voilà sa c mon code simple :

Code :
  1. <html>
  2. <head>
  3.   <title>Test PHP</title>
  4. </head>
  5. <body>
  6.   <form method="post" action="1er.php3">
  7.    Nom : <input type="text" name="nom" size="12"><br>
  8.    Prénom : <input type="text" name="prenom" size="12">
  9.    <input type="submit" value="OK">
  10.   </form>
  11. </body>
  12. </html>
  13. <?php
  14. $prenom = $_POST['prenom'];
  15. $nom = $_POST['nom'];
  16. print("<center>Bonjour $prenom $nom</center>" );
  17. ?>


 
le probléme c que quand je test il m'affiche sa aprés les champs a entrer

Code :
  1. Notice: Undefined index: prenom in c:\program files\easyphp1-7\www\1er.php3 on line 16
  2. Notice: Undefined index: nom in c:\program files\easyphp1-7\www\1er.php3 on line 17


 
Sa veut dire quoi ? (chui nioub)
j'utilise EditPlus pour taper les commandes et easyphp


Message édité par thekingsky le 28-01-2004 à 10:30:18
Reply

Marsh Posté le 28-01-2004 à 10:26:15   

Reply

Marsh Posté le 28-01-2004 à 10:43:14    

Eh bien pour débuter.
 
Tu lances ta page, et tu dis que
$prenom=$_POST['prenom']; (idem pour $nom)
 
Comme tu n'as pas soumis ton formulaire, $_POST['prenom'] n'existe pas -> notice:undefined index
 
Pour éviter cette alerte, tu devrais faire, par exemple

Code :
  1. <html>
  2.    <head>
  3.     <title>Test PHP</title>
  4.    </head>
  5.    <body>
  6. <?php
  7. If (isset($_POST['prenom']))//test si $_POST['prenom'] existe
  8.   {$prenom = $_POST['prenom'];}//valeur si le formulaire a été envoyé
  9.   Else {$prenom=""};//valeur quand tu ouvres la page pour la première fois
  10.   If (isset ($_POST['nom']))
  11.   {$nom = $_POST['nom'];}
  12.   Else
  13.   {$nom="";}
  14. ?>
  15.     <form method="post" action="1er.php3"> 
  16.      Nom : <input type="text" name="nom" size="12"><br> 
  17.      Prénom : <input type="text" name="prenom" size="12"> 
  18.      <input type="submit" value="OK"> 
  19.     </form>
  20.    </body>
  21.   </html>
  22.  
  23.   <?php
  24.   print("<center>Bonjour $prenom $nom</center>" ); 
  25.   ?>


 
Voilà pour l'idée générale et pour éviter les "notices".


Message édité par deliriumtremens le 28-01-2004 à 10:44:02
Reply

Marsh Posté le 28-01-2004 à 10:52:01    

ok g capté
en fet il utilise des var non existante au depart
donc il trouve pas
:)
 
Ps: Else {$prenom=""};//valeur quand tu ouvres la page pour la première fois  
dans cette ligne ta mis le ; aprés l'accolade ;)
 
Merci de ton aide

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed