Update avec while

Résolu
cs_brezoneg Messages postés 104 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 19 août 2015 - 10 févr. 2005 à 19:02
valneras Messages postés 6 Date d'inscription mardi 7 janvier 2003 Statut Membre Dernière intervention 10 février 2005 - 10 févr. 2005 à 22:01
Bonjour,
Je modifie des enregistrements avec :

$ra = "update tacheu11 set ";
$ra.= "tache1='$tache1',tache2='$tache2',tache3='$tache3',tache4='$tache4',
tache5='$tache5',tache6='$tache6',tache7='$tache7',tache8='$tache8',
tache9='$tache9',tache10='$tache10'";
$ra.= "where nom='Tâches Term Bac'";
if(mysql_query($ra) == 0)
Erreur("impossible de modifier la ligne
");
else
print("Le tableau de : $nom est modifié");

Ceci marche bien, mais je voudrais le faire avec while, pour une raison que je ne dévellope pas ici.
je fais donc :

$i=2;
while ( $i != $nbr ){
$rb= "tache$i='$tache$i'";
$i++;
$rc=$rc.",".$rb;
}
$ra = "update tacheu11 set tache1='$tache1'$rc where nom='TP'";

mais ça ne marche pas, des numéros sont enregistrés et quand je regarde de plus près

"tache$i='$tache$i'" donne
tache1='ikkk',tache2='2',tache3='3',tache4='4'........
pour tache1 ça marche vu que je l'ai mis après le while à cause de la virgule.

Je ne sais pas si je suis clair, mais j'aimerais trouver une solution.
merçi

7 réponses

valneras Messages postés 6 Date d'inscription mardi 7 janvier 2003 Statut Membre Dernière intervention 10 février 2005
10 févr. 2005 à 21:21
Bon je crois zavoir compris !
en fait tu veux afficher la variable tache1, tache2 ....
c'est pas très malin (perso j'aurai fais un tableau) mais bon...
donc pour afficher la variable tache1 par exemple il faut faire dans la boucle :
$rb
="update tacheuhhhh set ";

for ( $i=2;$i<$nbr;$i++ ){
$rb= "tache$i='".${"tache".$i}."'";
$rb.=($i<$nbr-1)?",":" ";
}
$rb.
"where nom'TP'";
c'est déjà un peu plus complexe!
++
@VinZ@
3
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
10 févr. 2005 à 19:18
Salut,



heu peux-tu être plus clair stp ?

Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
cs_brezoneg Messages postés 104 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 19 août 2015
10 févr. 2005 à 19:27
En gros comment faire un update matable set dans une boucle avec while sachant que mes champs ce nomment tache1,tache2,tache3 ......
0
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
10 févr. 2005 à 20:47
Slt,

Ca reste toujours pas clair, et si tu expliquais ce que tu veux faire exactement ?
D'ou vient la variable $tache par exemple et que contient elle? Nous ne sommes pas derriere ton ecran, alors soit plus souple et plus claire dans tes explications si tu veux des réponses.

Merci
KOogar

http://www.phpsources.org
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_brezoneg Messages postés 104 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 19 août 2015
10 févr. 2005 à 21:18
D'ou vient la variable $tache par exemple et que contient elle? Nous ne sommes pas derriere ton ecran, alors soit plus souple et plus claire dans tes explications si tu veux des réponses.

tache1,tache2,..... viennent d'un formulaire de modification, ce sont les "name" des texarea.
lorsque je fait envoyer dans mon formulaire je passe dans mon fichier de modification .
Là je fait un update dans la table correspondante et tache1,tache2.... sont les champs de la table. c'est pourquoi je fait tache1='$tache1',tache2='$tache2',.......avec un where pour modifier sur un seul enregistrement.
Si je veux faire cette manip c'est que je cherche a faire un ajout automatique de champ ( tachen).
merçi pour votre patience
0
cs_brezoneg Messages postés 104 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 19 août 2015
10 févr. 2005 à 21:47
Bravo !
0
valneras Messages postés 6 Date d'inscription mardi 7 janvier 2003 Statut Membre Dernière intervention 10 février 2005
10 févr. 2005 à 22:01
Evidemment ..... (St Maclou)

PS : Désolé pour le bas niveau de ce post!

@VinZ@
0
Rejoignez-nous