[RESOLU] SQL update qui ne fonctionne pas

Eléphant du PHP | 51 Messages

07 sept. 2017, 00:20

Bonjour à tous j'ai besoin de modifier toutes les lignes qui contiennent la valeur "1" des toutes mes tables.
J'ai donc écrit cela
L'idée est de réaliser une variable contenant une adresse et de remplacer la valeur "1" par cette addresse.

CE QUI FONCTIONNE
Je me connecte bien à la base
Je loop sur les deux arrays sans probleme
J'affiche les echo et les données mysql
Je reconnais bien uniquement les lignes qui contiennent la valeur 1

CE QUI NE FONCTIONNE PAS
L'update en mysql ne modifie pas la table quand je vérifie en php my admin


Merci de votre aide

Code : Tout sélectionner

$annee_text= array("an_1970", "an_1971" , ); foreach ($annee_text as $value) { foreach (range(1, 9) as $num_jour) { $texte=$bdd->query('SELECT * FROM '.$value.' WHERE `num_jour` = '.$num_jour.'' ); $texte = $texte->fetch(); if(empty($texte['image_1_lien'])) { } else if ($texte['image_1_lien'] = 1){ $mois = strtolower($texte['mois']); $jour = $texte['jour']; $annee = $texte['annee']; echo $texte['image_1_lien']; echo ' '; $lien = 'images/'.$mois.'/'.$jour.'/'.$annee.'/1.jpg'; echo $value; echo ' '; echo $lien; echo ' '; echo $texte['jour']; echo ' '; echo $texte['mois']; echo ' '; echo $texte['annee']; echo ' '; echo 'OK '; echo ' '; echo '/images/'; echo $mois; echo '/'; echo $texte['jour']; echo '/'; echo $texte['annee']; echo '/'; echo '1.jpg'; echo '</p>'; $sql= 'UPDATE '.$value.' SET `image_1_lien` = '.$lien.' WHERE '.$value.'.`ID_jour` = '.$num_jour.''; if ($bdd->query($sql) === TRUE) { echo "Ligne modifiee"; } else { echo "ligne non modifiee " . $conn->error; } } } }

Mammouth du PHP | 2703 Messages

07 sept. 2017, 00:35

affiche le contenu de $sql, execute le dans phpmyadmin et cela devrait te dire, au moins, qu'il manque quelque chose du coté de `image_1_lien` = '.$lien.'

Eléphant du PHP | 51 Messages

07 sept. 2017, 03:13

Ok il fallait rajouter le nom de la base de donnée et non suelement la table concernée.
Merci