update sql via form

Eléphanteau du PHP | 14 Messages

23 mai 2006, 19:44

bonjour ttlm


toutes les solutions exposées sur ce forum ou d'autres ne conviennent pas à mon pb.j'en ai tester certaines de celui-çi, sans resultats.tout çà pour dire que la fonction recherche, je l'ai utiliser :wink:


je fais face à un pb d'update sql via un formulaire de modif d'une note(id, titre, texte, date).je l'ai coder en trois temps, affichage de toutes les notes, pas de pbs, id recupéré via get.cet id je le passe au where pour afficher le formulaire prérempli avec la note pour modif, pas de pbs.je modifie, je poste et là...çà marche avec print_r mais pas quand j'utilise la requète update, rien n'est insérer.je n'ai aucun message d'erreur de la part de sql ou de php(5.1.4).


après une batterie de tests, j'utilise ce code :

Code : Tout sélectionner

if (isset($_POST['modifier'])) { $date = date("d-m-Y"); $heure = date("H:i"); $id = $_POST['id']; $titre_m = htmlentities($_POST['titre']); $texte_m = htmlentities($_POST['texte']); if (get_magic_quotes_gpc == 0) { $titre_m = addslashes($titre_m); $texte_m = addslashes($texte_m); } include_once ("fichiers/connect.php"); $sql = "UPDATE notes SET titre='$titre_m', texte='$texte_m' WHERE id='$id'"; mysql_query($sql) or die("Erreur SQL !" .mysql_error($sql)); echo "<p>note n&ordm;$id modifi&eacute;e le $date &grave; $heure.</p>\n"; echo '<a href="modif_note.php">modifier une autre note</a> &nbsp;&nbsp;<a href="index.htm">retour accueil</a>'; mysql_close($db); }
invariablement, j'obtient le else, je vous en fait grâce, sans intérets.

précision : php.ini est configuré comme suit :

magic_quotes_gpc = off;
registers_globals = on;

et pour ajouter et supprimer une note je n'ai aucun pbs.

quelqu'un(e) peux m'aider avant que je ne me jette par la fenêtre?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

24 mai 2006, 00:22

Quand tu dis qu'il ne rentre que dans le else, cela veut donc dire que la condition (isset($_POST['modifier'])) est fausse... A quoi correspond ta variable 'modifier' : est ce un champ caché, un bouton submit, ... ?
Est ce qu'il est bien présent lorsque tu affiches le print_r($_POST) ?
N'y a-t-il pas d'erreur dans le nom (lettres inversées, majuscules, ..) ?

Invité
Invité n'ayant pas de compte PHPfrance

24 mai 2006, 12:39

salut ryle

cela veut donc dire que la condition (isset($_POST['modifier'])) est fausse...
c'est ce que je croyais aussi.j'ai tester avec print_r et il m'affiche bien la note modifiée.la variable modifier est le submit, l'id, lui est hidden.
N'y a-t-il pas d'erreur dans le nom (lettres inversées, majuscules, ..) ?

c'est la première chose que j'ai vérifier.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

25 mai 2006, 11:07

quand tu fais le print_r de $_POST, as-tu bien l'index "modifier" qui apparait avec pour valeur le libellé du bouton ?

Ton submit est-il bien renseigné avec l'attribut name="modifier" et est il bien à l'intérieur du formulaire pour être envoyé avec les autres données ? (c'est probablement évident, mais bon, on sait jamais hein :))

Si tu n'y trouves pas d'erreur poste nous le code de ton formulaire et l'affichage du print_r qu'on essaye d'y voir plus clair :)

Eléphanteau du PHP | 14 Messages

25 mai 2006, 15:22

salut ryle


problème résolu.pbs de guillemets dans la requête.