Mise à jour de la base de données et update en MySQL pas valide
BusyElephant
Messages postés
11
Date d'inscription
Statut
Membre
Dernière intervention
-
BusyElephant Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
BusyElephant Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Alors voilà j'ai une base de données, et une petite interface sur mon site me permettant de rajouter ou de modifier des articles, qui s'intègrent donc dans cette base de données.
Seulement quand je veux modifier un article, j'ai une fonction qui devrait mettre à jour les informations sur l'interface et sur le site mais elle ne fonctionne que sur l'interface...
voici la portion de code en question qui ne fonctionne pas:
Si vous avez des idées ou indications, je prend !
Alors voilà j'ai une base de données, et une petite interface sur mon site me permettant de rajouter ou de modifier des articles, qui s'intègrent donc dans cette base de données.
Seulement quand je veux modifier un article, j'ai une fonction qui devrait mettre à jour les informations sur l'interface et sur le site mais elle ne fonctionne que sur l'interface...
voici la portion de code en question qui ne fonctionne pas:
echo("UPDATE articles set titre='$titre', short='$short', chapeau='$chapeau', article='$article', video='$video' WHERE id='$id'");
mysql_query("UPDATE articles set titre='$titre', short='$short', chapeau='$chapeau', article='$article', video='$video' WHERE id='$id'");
Si vous avez des idées ou indications, je prend !
A voir également:
- Mise à jour de la base de données et update en MySQL pas valide
- Ethernet n'a pas de configuration ip valide - Guide
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise a jour windows 10 - Accueil - Mise à jour
- Mise a jour chromecast - Accueil - Guide TV et vidéo
- Mise en forme conditionnelle excel - Guide
2 réponses
Bonjour,
1 - Tu utilises l'ancienne extension mysql.....
Merci de lire ceci : https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
Puis de passer à PDO ou à mysqli
2 - Si tu fais un echo de ta requête :
Qu'est-ce que ça t'affiche ?
=> Si tu testes ta requête DIRECTEMENT dans ta BDD ... est-ce qu'elle fonctionne ?
En PDO tu peux utiliser des blocs TRY/CATCH pour intercepter les erreurs de requêtes...
En Mysqli tu as la possibilité d'utiliser mysqli_error
(Et avec l'ancienne extension mysql... mysql_error )
1 - Tu utilises l'ancienne extension mysql.....
Merci de lire ceci : https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
Puis de passer à PDO ou à mysqli
2 - Si tu fais un echo de ta requête :
"UPDATE articles set titre='$titre', short='$short', chapeau='$chapeau', article='$article', video='$video' WHERE id='$id'"
Qu'est-ce que ça t'affiche ?
=> Si tu testes ta requête DIRECTEMENT dans ta BDD ... est-ce qu'elle fonctionne ?
En PDO tu peux utiliser des blocs TRY/CATCH pour intercepter les erreurs de requêtes...
En Mysqli tu as la possibilité d'utiliser mysqli_error
(Et avec l'ancienne extension mysql... mysql_error )
Le code n'est pas fou à voir, mais si tu veux je peux le linker :)
je te passe la connexion a la BDD
je te passe la connexion a la BDD
<form style="margin: 0 auto; width:50%" action="admin-mod-article.php"> <? require("../config/config.inc.php"); $db = mysql_connect("$dbhost", "$dblogin", "$dbpass") OR DIE("Base de données inaccessible."); mysql_select_db("$dbbase",$db) OR DIE("Base de données inaccessible."); $req_cars = mysql_query("SELECT * FROM articles ORDER BY id DESC"); $res_societe = mysql_num_rows($req_cars); echo "<SELECT class=\"form-control center-block\" name=\"id\">"; for($i=0 ; $i < $res_societe; $i++) { $id = mysql_result($req_cars,$i,"id"); $titre = mysql_result($req_cars,$i,"titre"); $date = mysql_result($req_cars,$i,"date"); $short = mysql_result($req_cars,$i,"short"); $chapeau = mysql_result($req_cars,$i,"chapeau"); $article = mysql_result($req_cars,$i,"article"); $img1 = mysql_result($req_cars,$i,"img1"); $img2 = mysql_result($req_cars,$i,"img2"); $img3 = mysql_result($req_cars,$i,"img3"); $img4 = mysql_result($req_cars,$i,"img4"); $img5 = mysql_result($req_cars,$i,"img5"); $img6 = mysql_result($req_cars,$i,"img6"); $img7 = mysql_result($req_cars,$i,"img7"); $img8 = mysql_result($req_cars,$i,"img8"); $img9 = mysql_result($req_cars,$i,"img9"); $img10 = mysql_result($req_cars,$i,"img10"); $video = mysql_result($req_cars,$i,"video"); echo "<OPTION value=\"$id\">$id - $titre - $date</OPTION>"; } ?> </SELECT> <br><input type="submit" class="btn btn-primary center-block" value="Modifier cet article"> </form> <hr> <? $id = $_GET['id']; if ($id!=""){ $req_cars = mysql_query("SELECT * FROM articles WHERE id=$id"); $id = mysql_result($req_cars,0,"id"); $titre = mysql_result($req_cars,0,"titre"); $date = mysql_result($req_cars,0,"date"); $short = mysql_result($req_cars,0,"short"); $chapeau = mysql_result($req_cars,0,"chapeau"); $article = mysql_result($req_cars,0,"article"); $img1 = mysql_result($req_cars,0,"img1"); $img2 = mysql_result($req_cars,0,"img2"); $img3 = mysql_result($req_cars,0,"img3"); $img4 = mysql_result($req_cars,0,"img4"); $img5 = mysql_result($req_cars,0,"img5"); $img6 = mysql_result($req_cars,0,"img6"); $img7 = mysql_result($req_cars,0,"img7"); $img8 = mysql_result($req_cars,0,"img8"); $img9 = mysql_result($req_cars,0,"img9"); $img10 = mysql_result($req_cars,0,"img10"); $video = mysql_result($req_cars,0,"video"); ?> <form action="admin-mod-article2.php" method="post" name="form" enctype="multipart/form-data"> <p><strong>ID</strong>* : <? echo $id; ?></p> <p><strong>Date </strong>* : <? echo $date; ?></p> <fieldset class="form-group"> <label for="titre">titre :</label> <input type="text" class="form-control" name="titre" id="titre" value="<? echo $titre; ?>" placeholder="titre" size="20" maxlength="255"> </fieldset> <fieldset class="form-group"> <label for="short">Résumé :</label> <textarea name="short" rows="3" class="form-control" ><? echo $short; ?></textarea> </fieldset> <fieldset class="form-group"> <label for="chapeau">Chapeau :</label> <textarea name="chapeau" rows="5" class="form-control" ><? echo $chapeau; ?></textarea> </fieldset> <fieldset class="form-group"> <label for="article">Article :</label> <textarea name="article" rows="35" class="form-control" ><? $article=str_replace('<br />', '', $article); echo $article; ?></textarea> </fieldset> <fieldset class="form-group"> <label for="img1">img1 </label> <? if ($img1!="") { ?> <img src="<? echo $img1; ?>" class="img-responsive imgstaff"><br> <? } ?>photo 1 <input type="file" class="form-control-file" name="img[]" value="<? echo $img1; ?>" /> <br /><br /> <label for="img2">img2</label> <? if ($img2!="") { ?> <img src="<? echo $img2; ?>" class="img-responsive imgstaff"><br> <? } ?>photo 2 <input type="file" class="form-control-file" name="img[]" value="<? echo $img2; ?>" /> <br /><br /> <label for="img3">img3</label> <? if ($img3!="") { ?> <img src="<? echo $img3; ?>" class="img-responsive imgstaff"><br> <? } ?>photo 3 <input type="file" class="form-control-file" name="img[]" value="<? echo $img3; ?>" /> <br /><br /> <label for="img4">img 4</label> <? if ($img4!="") { ?> <img src="<? echo $img4; ?>" class="img-responsive imgstaff"><br> <? } ?>photo 4 <input type="file" class="form-control-file" name="img[]" value="<? echo $img4; ?>" /> <br /><br /> <label for="img5">img5</label> <? if ($img5!="") { ?> <img src="<? echo $img5; ?>" class="img-responsive imgstaff"><br> <? } ?>photo 5 <input type="file" class="form-control-file" name="img[]" value="<? echo $img5; ?>" /> <br /><br /> <label for="img6">img6</label> <? if ($img6!="") { ?> <img src="<? echo $img6; ?>" class="img-responsive imgstaff"><br> <? } ?>photo 6 <input type="file" class="form-control-file" name="img[]" value="<? echo $img6; ?>" /> <br /><br /> <label for="img7">img7</label> <? if ($img7!="") { ?> <img src="<? echo $img7; ?>" class="img-responsive imgstaff"><br> <? } ?>photo 7 <input type="file" class="form-control-file" name="img[]" value="<? echo $img7; ?>" /> <br /><br /> <label for="img8">img8</label> <? if ($img8!="") { ?> <img src="<? echo $img8; ?>" class="img-responsive imgstaff"><br> <? } ?>photo 8 <input type="file" class="form-control-file" name="img[]" value="<? echo $img8; ?>" /> <br /><br /> <label for="img9">img9</label> <? if ($img9!="") { ?> <img src="<? echo $img9; ?>" class="img-responsive imgstaff"><br> <? } ?>photo 9 <input type="file" class="form-control-file" name="img[]" value="<? echo $img9; ?>" /> <br /><br /> <label for="img10">img10</label> <? if ($img10!="") { ?> <img src="<? echo $img10; ?>" class="img-responsive imgstaff"><br> <? } ?>photo 10 <input type="file" class="form-control-file" name="img[]" value="<? echo $img10; ?>" /> </fieldset> <p> <input name="go" type="hidden" value="1"> <input type="hidden" name="MAX_FILE_SIZE" value="500000"> <input name="id" type="hidden" value="<? echo $id; ?>"> <? echo "id n° : " .$id; ?> <br> <input name="maj" class="btn btn-primary center-block" type="submit" value="Modifier cet article"> </p> </form>
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI Merci d'y penser dans tes prochains messages. |
Donc reprenons...
1 - Tu fais une maj via ta page web . via le fichier admin-mod-article2.php
En BDD les données se mettent à jour ?
2 - Tu réaffiches la page contenant les infos ... donc normalement, via les requêtes SELECT ... ça doit normalement afficher les données issues de la BDD ... c'est ça qui ne fonctionne pas ?
1 - Tu fais une maj via ta page web . via le fichier admin-mod-article2.php
En BDD les données se mettent à jour ?
2 - Tu réaffiches la page contenant les infos ... donc normalement, via les requêtes SELECT ... ça doit normalement afficher les données issues de la BDD ... c'est ça qui ne fonctionne pas ?
Exactement. Les données issues de la BDD ne sont pas effectivement celles de la BDD mais sont celles de la création de l'article.
Exemple:
- je fais un article dont le titre est "article 1"
- je modifie en "article 2"
- si je veux remodifier, je vais avoir d'affiché dans ma value "article 1"
même si je fais un f5 ou ctrl+f5, ce qui m’amène a dire que ça ne vient pas du cache mais bien d'un souci dans le code.
Merci à toi de prendre le temps de répondre en tout cas !
Exemple:
- je fais un article dont le titre est "article 1"
- je modifie en "article 2"
- si je veux remodifier, je vais avoir d'affiché dans ma value "article 1"
même si je fais un f5 ou ctrl+f5, ce qui m’amène a dire que ça ne vient pas du cache mais bien d'un souci dans le code.
Merci à toi de prendre le temps de répondre en tout cas !
Désolé .. mais j'ai du mal à comprendre...
Lorsque tu fais un maj via ton site web des données d'un article (donc via ton script admin-mod-article2.php ) .. est-ce que les données en BDD sont mises à jour ???
Réponse : Oui ou NON ....
Si la réponse est NON ... merci de nous montrer le code complet de ta page admin-mod-article2.php
Lorsque tu fais un maj via ton site web des données d'un article (donc via ton script admin-mod-article2.php ) .. est-ce que les données en BDD sont mises à jour ???
Réponse : Oui ou NON ....
Si la réponse est NON ... merci de nous montrer le code complet de ta page admin-mod-article2.php
Les changement s'opèrent sur la bdd lors de la modification d'articles, mais pas sur la page de modification, ce qui fait que si je veux modifier deux fois un article, la deuxième fois je retomberais sur des values obsolètes
J'espere être clair :)
et tu dis que l'extention mysql est dépassée, seulement mon site tourne entièrement avec ce langage et je n'ai pas de souci (mis à part celui auquel je suis confronté aujourd'hui). Pourquoi changer ?
Merci de ta réponse, en tout cas :)
Donc si les données en BDD se mettent bien à jour... le souci ne se trouve pas dans le code que tu nous montres.... mais plutôt dans la page qui affiche ces informations ... non ??!