Impossible de mettre a jour enregistrement dans ma base
cs_Fic
Messages postés11Date d'inscriptionvendredi 1 avril 2005StatutMembreDernière intervention13 juillet 2005
-
3 juin 2005 à 14:00
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 2007
-
4 juin 2005 à 22:57
Bonjour,
Je suis en pleine auto-formation PHP/MySQL.
Mon projet : une administration basique de site dynamique.
Lecture des articles contenus dans une base, affichage, creation, modification et suppression. Je suis arrivé a mes fins sur tous les points sauf un.
Impossible de faire marcher la mise a jour d'un article. A premier passage mon script se connecte, lit bien la table, affiche le contenu de l'article dans un formulaire.
Ca se corse à la validation : le script n'Update rien du tout dans la base et retourne le message suivant :
Erreur lors de la lecture de la table : You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Ma config locale = Apache/1.3.33 - PHP/4.3.10 - MySQL 3.23.49.
Toute ma compétence(?) me vient de la lecture des scripts de phpcs et de la lecture de vos posts. Qlq1 a-t-il le temps de lire mon code pour me conseiller ?
Merci
*************
<?php
mysql_connect($mysql['serveur'],$mysql['login'],$mysql['password'])
or die("Erreur lors de la connexion à la base MySQL : ".mysql_error());
mysql_select_db($mysql['database'])
or die("Erreur lors du choix de la table MySQL : ".mysql_error());
/* test de soumission: variable $soumettre = true alors update de la base */
if(isset($soumettre))
mysql_query("UPDATE ".$mysql['table']." SET titre=".$_POST['titre'].","
."texte=".$_POST['texte'].","
."jour=".$_POST['jour'].","
."mois=".$_POST['mois'].","
."annee=".$_POST['annee'].","
."etat=".$_POST['etat'].") WHERE id_num=".$_get['id']." LIMIT 1"
) or die("Erreur lors de l'enregistrement : ".mysql_error());
/* Sinon variable $soumettre = false (vide) alors affichage formulaire */
/* recuperation du contenu de l'article dans la base pour remplir les champs */
?>
<!-- requete dans la base -->
<!-- recuperation du contenu de l'article -->
<!-- fin du tableau avec champs remplis -->
<?php
$r = mysql_query("SELECT * FROM ".$mysql['table']." WHERE id_num= ".$_GET['id'])
or die("Erreur lors de la lecture de la table : ".mysql_error());
$row = mysql_fetch_assoc($r);
cs_Fic
Messages postés11Date d'inscriptionvendredi 1 avril 2005StatutMembreDernière intervention13 juillet 2005 3 juin 2005 à 14:24
Bonjour. Je repose ma question plus proprement
Mon projet : une administration basique de site dynamique.
Lecture des articles contenus dans une base, affichage, creation, modification et suppression.
Je suis arrivé a mes fins sur tous les points sauf un. Impossible de faire marcher la mise a jour d'un article. Au premier passage mon script se connecte, lit bien la table, affiche le contenu de l'article dans un formulaire.
Ca se corse à la validation : le script n'Update rien du tout dans la base et retourne le message suivant :
Erreur lors de la lecture de la table : You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1. Ma config locale = Apache/1.3.33 - PHP/4.3.10 - MySQL 3.23.49.
Quoi qu je coupe ou change, rien ne marche. Qlq1 a-t-il le temps de lire mon code pour me conseiller? Merci.
mysql_connect($mysql['serveur'],$mysql['login'],$mysql['password'])
or die("Erreur lors de la connexion à la base MySQL : ".mysql_error());
mysql_select_db($mysql['database'])
or die("Erreur lors du choix de la table MySQL : ".mysql_error());
/* test de soumission: variable $soumettre = true alors update de la base */
if(isset($soumettre))
mysql_query("UPDATE ".$mysql['table']." SET titre=".$_POST['titre'].","
."texte=".$_POST['texte'].","
."jour=".$_POST['jour'].","
."mois=".$_POST['mois'].","
."annee=".$_POST['annee'].","
."etat=".$_POST['etat'].") WHERE id_num=".$_get['id']." LIMIT 1"
) or die("Erreur lors de l'enregistrement : ".mysql_error());
/* Sinon variable $soumettre = false (vide) alors affichage formulaire */
/* recuperation du contenu de l'article dans la base pour remplir les champs */
?>
<!-- requete dans la base -->
<!-- recuperation du contenu de l'article -->
<!-- fin du tableau avec champs remplis -->
<?php
$r = mysql_query("SELECT * FROM ".$mysql['table']." WHERE id_num=".$_GET['id'])
or die("Erreur lors de la lecture de la table : ".mysql_error());
$row = mysql_fetch_assoc($r);