Faire UPDATE sur cette requette

Faire UPDATE sur cette requette - SQL/NoSQL - Programmation

Marsh Posté le 12-06-2009 à 14:09:24    

Bonjour étant asser assez novice en mysql j'aurai besoin de votre aide pour changer ce INSERT INTO en UPDATE
 
merci pour votre aide
 
$sql = 'INSERT INTO acc VALUES("", "'.mysql_escape_string($_POST['auteur']).'", "'.mysql_escape_string($_POST['titre']).'", "'.date("Y-m-d H:i:s" ).'", "'.mysql_escape_string($_POST['news']).'" )';

Reply

Marsh Posté le 12-06-2009 à 14:09:24   

Reply

Marsh Posté le 12-06-2009 à 14:33:39    

tu veux updater quel champ?

Reply

Marsh Posté le 12-06-2009 à 14:37:37    

pataluc a écrit :

tu veux updater quel champ?


 tous en faite
je test ceci mais je suis pas sur que cela fonctionne
 
$sql = 'UPDATE acc SET ("id ="", auteur = "'.mysql_escape_string($_POST['auteur']).'" ,titre = "'.mysql_escape_string($_POST['titre']).'" , date = "'.date("Y-m-d H:i:s" ).'", texte_news = "'.mysql_escape_string($_POST['news']).'"  WHERE id ="1 LIMIT 1" )';
 
non ca ne fonctionne pas


Message édité par dabiz le 12-06-2009 à 14:40:58
Reply

Marsh Posté le 12-06-2009 à 14:47:32    

ca peut pas fonctionner au vu de la fin de ta requête, car les guillemets du where id= incluent le LIMIT 1

 

j'ai pas cherché plus loin pour le moment...

 

[EDIT] a priori la première guillemet juste après le set ne sert à rien non plus. je te conseille un echo $sql pour bien voir quelle est la requête construite, ca permet de mieux voir les pb de caractère genre guillemets ou apostrophe.

Message cité 1 fois
Message édité par pataluc le 12-06-2009 à 14:50:09
Reply

Marsh Posté le 12-06-2009 à 14:53:53    

pataluc a écrit :

ca peut pas fonctionner au vu de la fin de ta requête, car les guillemets du where id= incluent le LIMIT 1

 

j'ai pas cherché plus loin pour le moment...

 

[EDIT] a priori la première guillemet juste après le set ne sert à rien non plus. je te conseille un echo $sql pour bien voir quelle est la requête construite, ca permet de mieux voir les pb de caractère genre guillemets ou apostrophe.

 

.Voici mon code

 
Code :
  1. <? if (!isset($_POST['auteur']) || !isset($_POST['titre']) || !isset($_POST['news'])) {
  2.          $erreur = 'Les variables nécessaires au script ne sont pas définies.';
  3.       }
  4.       else {
  5.          if (empty($_POST['auteur']) || empty($_POST['titre']) || empty($_POST['news'])) {
  6.             $erreur = 'Au moins un des champs est vide.';
  7.          }
  8.          else {
  9.   $sql = 'UPDATE acc SET (id ="", auteur = "'.mysql_escape_string($_POST['auteur']).'" ,titre = "'.mysql_escape_string($_POST['titre']).'" , date = "'.date("Y-m-d H:i:s" ).'", texte_news = "'.mysql_escape_string($_POST['news']).'"  WHERE id =1 LIMIT 1)';
  10.             mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
  11.             mysql_close();
  12.             header('Location: index.php');
  13.             exit();
  14.          }
  15.       } 
  16.    }
  17. ?>
  18.    <form action="admin.php3" method="post">
  19.    <table>
  20.    <tr><td>
  21.    <span class="gras">Auteur :</span>
  22.    </td><td>
  23.    <input type="text" name="auteur" maxlength="30" size="50" value="<?php if (isset($_POST['auteur'])) echo htmlentities(trim($_POST['auteur'])); ?>">
  24.   </td></tr><tr><td>
  25.    <span class="gras">Titre :</span>
  26. </td><td>
  27. <input type="text" name="titre" maxlength="50" size="50" value="<?php if (isset($_POST['titre'])) echo htmlentities(trim($_POST['titre'])); ?>">
  28.   </td></tr><tr><td>
  29.    <span class="gras">Message :</span>
  30. </td><td>
  31.   <textarea name="news" cols="50" rows="10"><?php if (isset($_POST['news'])) echo htmlentities(trim($_POST['news'])); ?></textarea>
  32. </td></tr><tr><td><td align="right">
  33. <input type="submit" name="go" value="Poster le message">
  34. </td></tr></table>
  35. </form>
  36. <?php
  37. if (isset($erreur)) echo '<br /><br />',$erreur; 
  38. ?>
 

merci pour ton aide


Message édité par dabiz le 12-06-2009 à 14:55:36
Reply

Marsh Posté le 12-06-2009 à 15:13:52    

ca ne fonctionne tjs pas? c quoi ton erreur ou ton résultat?

Reply

Marsh Posté le 12-06-2009 à 15:32:46    

aucun résultat sa ne remplace pas mon texte, titre, date/heure dans mes champs de ma bdd

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed