Problème UPDATE avec formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème UPDATE avec formulaire

Re: Problème UPDATE avec formulaire

par AB » 19 juin 2011, 18:44

et lorsque je lance ma page j'ai bien un echo qui me renvois:

Code : Tout sélectionner

UPDATE stage SET $data NomEntreprise = "" WHERE id = "11"
Cela aurait dû t'alerter. Tu vois bien que $data n'est pas interprété dans cette chaine de caractère. Et en plus le contenu = "" est vide. Le résultat attendu ne serait-il pas plutôt plutôt $query = "UPDATE stage SET NomEntreprise = 'valeur_data' WHERE id = '11'"

Re: Problème UPDATE avec formulaire [RESOLU]

par olivier29 » 19 juin 2011, 17:15

Je ne croix pas 8-|
Et en plus ça m' efface ma donnée dans ma table :priere:

Bon j'ai résolu mon problème en mettant sur une page mon formulaire et sur la page de traitement de ce formulaire ma requête. Maintenant ça ne m'efface plus mes données et ça les mets à jour.
Je ne comprend pas pourquoi sur 2 pages ça fonctionne et pas sur une seule???
Si jamais quelqu'un à une réponse
Merci

Re: Problème UPDATE avec formulaire

par Ryle » 19 juin 2011, 16:55

T'aurais pas un $data en trop dans ta requête sql ? :)

Re: Problème UPDATE avec formulaire

par olivier29 » 19 juin 2011, 15:58

Merci de m'avoir répondu,
Donc j'ai bien session_start() dans ma page qui exécute ma requête (biensur en première ligne avant tout autre code). J'ai modifié mon code comme suggéré
<?php
$sql = 'UPDATE stage SET $data NomEntreprise = "'.$_POST['nouveau_NomEntreprise'].'" WHERE id = "'.$_SESSION['modif_id'].'" ';
echo $sql;
$bdd->exec($sql);
?>
et lorsque je lance ma page j'ai bien un echo qui me renvois:

Code : Tout sélectionner

UPDATE stage SET $data NomEntreprise = "" WHERE id = "11"
Mais toujours le même problème pas de modification de ma table. J'espère que ce n'est pas dû à une erreur de syntaxe? (je dis ça car je commence à peine le php).
Si quelqu'un a une idée.

Re: Problème UPDATE avec formulaire

par Ryle » 19 juin 2011, 11:47

Et dans la page qui exécute la requête as-tu bien un session_start() ? as-tu vérifié la requête générée avant de l'exécuter ?
<?php
$sql = 'UPDATE stage SET NomEntreprise = "'.$_POST['nouveau_NomEntreprise'].'" WHERE id = "'.$_SESSION['modif_id'].'" ';
echo $sql; // c'est parfois utile de voir la requete sql que l'on envoi à la base de données : )
$bdd->exec($sql);
?>

Problème UPDATE avec formulaire

par olivier29 » 19 juin 2011, 11:36

Bonjour,
voilà mon problème :
je voudrais faire un « UPDATE » dans ma base de donnée à l'aide d'un formulaire j'ai donc mon formulaire
 
<form method="post" action="details_entreprise.php">
<table border = 0>
<tr>
  <td>Nouveau Nom de l'entreprise</td>
  <td><input type=text name="nouveau_NomEntreprise"></td>
</tr>
<tr>
  <td COLSPAN=2><input type="submit" name="valider" value="envoyer"> </td>
</tr>
</table>
</form>
puis ma requête
<?php
$bdd->exec('UPDATE stage SET NomEntreprise = "'.$_POST['nouveau_NomEntreprise'].'" WHERE id = "'.$_SESSION['modif_id'].'" ');
?>
En exécutant cette page php ma table ne se met pas à jour mais efface la donnée de ma table.
La variable $_SESSION['modif_id'] me sert à sélectionner l'entreprise que j'ai choisi sur la page précédente.
J'ai vérifier que la variable POST['nouveau_NomEntreprise'] été bien gardé sur ma page (details_entreprise.php) par un
<?php echo $_POST[''nouveau_NomEntreprise'] ; ?>
et cette variable s'affiche bien.

J'ai cherché un peu partout mais je ne trouve aucune solution.
Merci de m'apporter votre aide.