probleme de variable

Eléphant du PHP | 110 Messages

29 janv. 2008, 11:43

slt
je recois un message de ce type lorsque j'execute mon code, par contre je recupere bien mais variable ds un echo. je ne comprend pas "undifined index" de quel index ? celui de mon tableau $_POST
Notice: Undefined index: nom_invite0 in c:\programfiles\easyphp1-8\www\fiesta\traitement_liste_invites.php on line 17
voici mon code
<?php
// variable nombre de ligne ds le formulaire
$ligne=(count($_POST)-1)/3;

// boucle creation du nombre d'invite
for($i=0;$i<=$ligne;$i++){

$invite=new invites();
$invite->nom=$_POST['nom_invite'.$i];
$invite->prenom=$_POST['prenom_invite'.$i];
$invite->email=$_POST['email_invite'.$i];
echo "<br>".$invite->nom; 
echo "<br>".$invite->prenom; 
echo "<br>".$invite->email; 

// appel function
//$invite->chargement($invite->nom,$invite->prenom,$invite->email);
}//fin for 
?>
merci A+

d0m
Mammouth du PHP | 1141 Messages

29 janv. 2008, 11:52

Oui apparement $_POST['nom_invite0'] n'existe pas.
Tu peux vérifier avec un
print_r($_POST);

ViPHP
ViPHP | 4039 Messages

29 janv. 2008, 11:52

Bien lire et comprendre les messages d'erreurs peuvent déjà donner plein mille de réponses.

Dans ton cas, le champ "nom_invite0" n'existe pas. Il n'était donc pas dans ton formulaire, tout simplement.

Une chôse sur laquelle j'aimerais que tu parles, pourquoi ajouter un chiffre à la fin du nom des champs ? Il y a peut-être un champ "nom_invite" sur ton formulaire, mais pourquoi y ajouter un chiffre ? Et à quoi cert le "calcul" des lignes en début de formulaire ?
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Eléphant du PHP | 110 Messages

29 janv. 2008, 12:17

vous avez raison il faut bien lire les message d'erreur.
en effet ds ma boucle for $i=0 me donne un champ qui n'existe pas je dois mettre ma variable $i=1
et la ca marche !!!
<?php
for($i=1;$i<=$ligne;$i++){

$invite=new invites();
$invite->nom=$_POST['nom_invite'.$i];
$invite->prenom=$_POST['prenom_invite'.$i];
$invite->email=$_POST['email_invite'.$i];
echo "<br>".$invite->nom; 
echo "<br>".$invite->prenom; 
echo "<br>".$invite->email; 

// appel function
//$invite->chargement($invite->nom,$invite->prenom,$invite->email);
}//fin for 
?>
pour berzemus
le calcul de lignes me permet de savoir combien j'ai d'invités ds mon formulaire pour les envoyer tous ds ma bd. j'ajoute un chiffre a chaque champs pour remplir correctement ma base de donnée (avec lequel j'ai un soucis d'ailleurs il faut que je fouille un peu) sinon a chaque requête de ma base de donnée faite a travers ma class invite je vais écraser les données precedantes. enfin je crois ! peut être que c'est inutile je vais vérifier. je suis preneur de toute solution plus simple.
A+