2010-05-21 7 views
0

J'essaie de mettre à jour certaines informations dans la base de données, mais pour certaines raisons, il ne met pas à jour. De plus, je ne reçois pas d'erreur dans les journaux du serveur.php mysql, la requête de mise à jour ne fonctionne pas

mysql_query("UPDATE `view_item` SET 
       `item_number` = $item_number, 
       `title` = $title, 
       `price` = $price, 
       `shipping` = $shipping, 
       `location` = $location, 
       `start_time` = $start_time, 
       `end_time` = $end_time, 
       `seller_userName` = $seller_userName, 
       `seller_UserNum` = $seller_UserNum, 
       `number_of_bids` = $number_of_bids, 
       `picture_link` = $picture_link 
      WHERE `item_number` = $item_number"); 

Répondre

2

vous devez ajouter des guillemets autour de vos variables php

SET `item_numer` = '$item_number' 

et ainsi de suite. Si cela ne résout pas le problème. essayez d'exécuter la requête directement dans MySQL et voyez quelles erreurs de DB cela déclenche.

2

Cette question est trop vague ...

Exécuter ceci après cette requête pour voir ce qui se passe:

echo mysql_error(); 

En outre, il est un grand, l'habitude utile pour obtenir votre requête dans une variable puis l'exécuter, afin que vous puissiez voir ce qu'il a en fin de compte avant de l'exécuter:

$query = "UPDATE whatever"; 
// Here you can see what you'll be running 
// echo $query; 
mysql_query($query); 

Si vous avez fait cela, vous seriez vous rendez compte vous manque des citations de chaîne dans votre Quer y.

+0

J'ai l'erreur suivante:

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 '9736364'' at line 1
9736364 est la valeur de $ item_number. – Michael

+0

La dernière version de la requête que j'ai est

 mysql_query("UPDATE 'view_item' SET 'title' = '$title', 'price' = '$price', 'shipping' = '$shipping', 'location' = '$location', 'start_time' = '$start_time', 'end_time' = '$end_time', 'seller_userName' = '$seller_userName', 'seller_UserNum' = '$seller_UserNum', 'picture_link' = '$picture_link WHERE 'item_number' = '$item_number'"); 
Michael

1

La requête est un peu hors - vous essayez de mettre à jour item_number avec $item_number, mais aussi en essayant de limiter la requête à WHERE item_number = $item_number. Cela ne fonctionnerait pas si le nouveau numéro d'article est différent de l'ancien. Avez-vous accès à l'ancien numéro d'article? Ou avez-vous même besoin de le mettre à jour?

+0

en effet je viens de voir que je mets aussi à jour item_number avec item_number donc j'ai enlevé ceci de la syntaxe mais le reste de la syntaxe est bien. Fondamentalement, j'essaie de mettre à jour les détails (titre, prix, etc) liés à l'item_number. – Michael

0

J'utilise

mysql_query("UPDATE view_item SET item_number = '$item_number', title = '$title', price = '$price', shipping = '$shipping', location = '$location', start_time = '$start_time', end_time = '$end_time', seller_userName = '$seller_userName', seller_UserNum = '$seller_UserNum', number_of_bids = '$number_of_bids', picture_link = '$picture_link' WHERE `item_number` = '$item_number'"); 

quelque chose comme ça et le mien travaille

Questions connexes