mysql更新,计算机说它工作但数据库没有变化

时间:2011-07-05 20:26:24

标签: php mysql sql

<?php 

  require('dbconnect.php');

  $indexno = $_POST['indexno'];
  $cevap = $_POST['cevap'];
  $cevapdate = gmdate("Y-m-d\TH:i:s\Z");
  $query = "UPDATE soru 
               SET cevap = '$cevap', 
                   cevapdate = '$cevapdate' 
             WHERE `index` = '$indexno'";

$link = mysql_query($query);
if(!$link) {
  die('not worked: ' . mysql_error());
} else {
  mysql_close($con);    
  echo 'worked';
}

?>

这个PHP代码的结果是“工作”。但是数据库没有变化。我试图通过索引ID更新行上的cevap和cevapdate字段。

2 个答案:

答案 0 :(得分:0)

您需要从index周围删除单引号。编写查询时,不应在列名称周围放置单引号。以这种方式写下您的查询 -

$query = "UPDATE soru SET cevap = '$cevap', cevapdate = '$cevapdate' WHERE index = '$indexno'";

答案 1 :(得分:0)

你必须用反引号转义你的行/表,而不是单引号。

$query = "UPDATE `soru`
  SET `cevap` = '$cevap', `cevapdate` = '$cevapdate'
  WHERE `index` = '$indexno'";

此外,您应该转义用户输入以阻止SQL injections