Aller au contenu

Probleme avec un UPDATE


Hugo38

Sujets conseillés

Bonjour tous le monde,

Encore un petit soucis, cette fois avec un requete UPDATE.

Mon but est de faire en sorte qu'a chaque clic sur un bouton une table contenu se copie dans une table contenu_temp.

Voila ma requette :

if(empty($err)){	
$sql2 = "SELECT * FROM contenu";
$query2 = mysql_query($sql2);
while($data2 = mysql_fetch_array($query2)){

$id = $data2['Id'];
$contenu = $data2['Contenu'];
$cat = $data2['Categorie'];
$page = $data2['Page'];


$sql3 = "UPDATE contenu_temp SET Categorie='$cat',Page='$page',Contenu='$contenu' WHERE Id='$id'";
mysql_query($sql3);

}
}

Alors quand je fait un echo de $sql3, le contenu affiché est le bon par contre il ne me le rentre pas en bdd, donc d'apres moi un soucis avec le mysdql_query mais je ne voit pas mon erreur.

Merci d'avance.

Lien vers le commentaire
Partager sur d’autres sites

Re bonjour,

Apres quelques test je viens de me rendre compte que la requette fonctionne mais une fois sur deux.

Enfait sur mes 10 entrée il me fait un update sur la 1, 3, 5, 7 ,9 et les autres non.

Alors la par contre je suis perdus, si vous avez une solution je suis preneur.

Merci

Lien vers le commentaire
Partager sur d’autres sites

Pourquoi ne copierais-tu pas la table entière, plutôt que ses éléments un par un ? Le traitement en serait grandement accéléré, vu que tu ne ferais plus q'une requête (éventuellement deux, la première pour vider la table temporaire), au lieu d'une requête par enregistrement.

Lien vers le commentaire
Partager sur d’autres sites

L'Id existe bien car au tout début j'ai copié ma table contenu dans ma table contenu_temp donc les 10 Id sont déja present mais il ne m'en modifie que 1 sur 2.

Lien vers le commentaire
Partager sur d’autres sites

Et j'espère que ce n'est pas une copie de toute la table, parce que c'est pas vraiment top comme système

Dans les valeurs des champs categorie et contenu, tu n'aurais pas des ' par hasard??

Lien vers le commentaire
Partager sur d’autres sites

Non il n'y a pas de ' dans mes champs.

Les deux tables ont apparament une structure identique.

Je e comprend pas pourquoi il en prend toujours que une sur deux.

Lien vers le commentaire
Partager sur d’autres sites

Ben avec ta requete le soucis c'est qu'une fois que je l'aurais fait je pourrais plus la mettre a jour vu qu'elle utilise pas un UPDATE.

A par si j'ai loupé quelque chose.

Lien vers le commentaire
Partager sur d’autres sites

Je viens de tester, donc ça fonctionne si ma table est vide, mais une fois qu'elle s'est remplie elle ne se remet pas a jour quand je recommence

Modifié par Portekoi
Texte initiale de Hugo : "cela ne fonctionne pas" puis le post ci-dessus.
Lien vers le commentaire
Partager sur d’autres sites

As tu une erreur, un message etc? Désolé, j'ai oublié ma boule de cristal...

Avec ma technique, tu vides la table avec un

truncate table contenu_temp ;

et tu la remplies avec :

Insert into contenu_temp 
Select * from contenu;

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...