|
|
|
|
$nb = $_POST['nb']; //nombre d'enregistrements
$i = 1 ;
while ($i < $nb){
$img = $_POST['img'.$i];
$cat_id = $_POST['cat_id'.$i];
}D'avance merci à ceux qui pourront m'aider et/ou trouver des solutions alternatvies ;)
Salut,
Tout paraît bon, mais $img et$cat_id sont sans cesse ecrasés par leur valeur suivante (exemple: $img sera égal à $_POST['img1'] puis après sera égal à $_POST['img2']. Donc utilise un tableau: while ($i < $nb){
$img[$i] = $_POST['img'.$i];
$cat_id[$i] = $_POST['cat_id'.$i];
} |
En fait c'est égal que les variables soient automatiquement écrasée ou non. Elles sont tout de suite traitée, puis après sont inutiles donc pas d'importance.
Par contre, tu peux me confirmer que la méthode $_POST[] accepte que l'on lui balance des variable ? ('cat_id'.$i) @+ (_..:: P'tit Suisse ::.._) |
Oui, comme l'index d'un tableau est une chaine :
=> $tableau ['chaine'] ...tu peux parfaitement faire un travail sur cette chaine comme tu le fais avec la concatenation. Vérifie d'abord que ton post possède vraiment ces index. Fais un echo sur tes $_POST['img'.$i] dans ta boucle, comme ça tu verras bien... |
|
Bon, alors voilà mon code :
$nb = $_POST['nb'];
$i = 1;
while ($i < $nb){
$img = $_POST['img'.$i];
$cat_id = $_POST['cat_id'.$i];
$comm = $_POST['comm'.$i];
$i++;
$requete = "UPDATE images SET cat_id='$cat_id', img='$img', comm='$comm', susp='false' WHERE img='$img'";
mysql_query($requete);
echo 'Cat_id : '.$cat_id."<br>\n";
echo 'Img : '.$img."<br>\n";
echo 'Comm : '.$comm."<br>\n";
}
echo 'Les données ont bien été enregistrées.<br>'."\n";Le truc, c'est que ma table n'est pas mise à jour, et que mes echo ne donnent rien...
Pourtant mon formulaire fonctionne, car lorsque je traite image par image (sans la boucle, avec des données fixes) cela marche. Donc d'où vient mon bug ? EDIT : la seule chose qui s'affiche est mon "Les données ont bien été enregistrées". (_..:: P'tit Suisse ::.._) |
Alors peut être un soucis avec $_POST['nb']
Tu as vérifié s'il avait une valeur? |
|
Malheureusement oui, nb a non seulement une valeur, et en plus elle est juste :P ;)
(_..:: P'tit Suisse ::.._) |
|
Et quand tu essaies
echo $_POST['img'.$i] Ca ne donne rien? C'est dans une fonction tout ça ou c'est global? |
C'est global... c'est pour ça que j'ai posté ici, je comprends pas pourquoi ça ne marche pas... Mais je vais continuer à faire des test ce soir.
(_..:: P'tit Suisse ::.._) |
Tu vas rire (j'espère ^^) c'est juste une faute toute simple, en faite ma variable nb était envoyée par un champdisabled, donc en fait pas transmise...
Alors tout ça partait d'une erreur stupide, mais là c'est bon, j'ai trouvé et tout fonctionne à merveille. Donc merci pour ton aide et @+ ;) (_..:: P'tit Suisse ::.._) |
Ok :-) |
Résultats pour [PHP] incrémentation de $_POST[] ...
Résultats pour [PHP] incrémentation de $_POST[] ...
Résultats pour [PHP] incrémentation de $_POST[] ...
Résultats pour [PHP] incrémentation de $_POST[] ...
Résultats pour [PHP] incrémentation de $_POST[] ...