我正在对表 tblpages_copy 运行查询,以获取行date date并在同一循环中更新 tblpages_copy2 。出于某种原因,在 tblpages_copy2 中创建的日期,它进入今天的日期。
我检查了$ date2值,并且它的正确值完全正常。 tblpages_copy 中创建的日期类型为字符串
这里是QUERY
$i=0;
$q = mysql_query( "SELECT datecreated FROM tblpages_copy" );
while($row = mysql_fetch_array($q)){
$datecreated = $row["datecreated"];
$date = strtotime($datecreated);
$date2 = date('Y-m-d H:i:s', $date);
$q2 = mysql_query( 'UPDATE tblpages_copy2 SET datecreated = ' . $date2 . ' ');
if($q2){
echo $i++ .' '. $q2 . ' ' . $date2 . "<br/>";
} else {
echo mysql_error() . "<br/>";
}
}
MySQL错误转储
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 'xx' at line 1
我怀疑更新查询是错误的。我尝试过几种方法但没有运气
$q2 = mysql_query( "UPDATE tblpages_copy2 SET datecreated = '$date2'");
$q2 = mysql_query( "UPDATE tblpages_copy2 SET datecreated = ". $date2);
答案 0 :(得分:3)
尝试执行此操作,围绕$date2
'
并使用"
&#39; s代替'
:
$q2 = mysql_query("UPDATE tblpages_copy2 SET datecreated = "' . $date2 . '" ");
答案 1 :(得分:2)
更改
mysql_query( 'UPDATE tblpages_copy2 SET datecreated = ' . $date2 . ' ');
到
mysql_query( 'UPDATE tblpages_copy2 SET datecreated = "' . $date2 . '"');
我打赌它有效。日期是其他任何字符串,必须引用。
答案 2 :(得分:1)
尝试
'UPDATE tblpages_copy2 SET datecreated = "' . $date2 . '"'
不要使用mysql_ *函数。不推荐使用mysql_ *函数。您可以使用PDO和Mysqli