苦苦于将数据库日期更新x天

时间:2013-07-22 11:07:47

标签: php mysql date

我无法将2天添加到数据库中的日期。我尝试了多种方法,但没有一种方法可以更新数据库。

 include('CONNECT-DB.php');

 // check if the 'id' variable is set in URL, and check that it is valid
 if (isset($_GET['id']) && is_numeric($_GET['id']))
  {
 // get id value
 $id = $_GET['id'];

 // delete the entry
  $id = $_GET['id'];
$result1 = mysql_query("SELECT `offerends` FROM `data` WHERE id=$id");

$date1 = str_replace('-', '/', $result1);
$date2 = date('y-m-d',strtotime($date1 . "+2 days"));

mysql_query("UPDATE `offerends` SET `$date2` WHERE id=$id");

我已经反过来了,感谢您提出的建议,这是正确的代码,现在可供我使用。

 if (isset($_GET['id']) && is_numeric($_GET['id']))
 {

 $id = $_GET['id'];

  $id = $_GET['id'];
$result1 = mysql_query("SELECT `offerends` FROM cheapest` WHERE id=$id");

$date2 = "DATE_ADD(offerends,INTERVAL 3 DAY)";

mysql_query("UPDATE `cheapest` SET offerends=$date2  WHERE id=$id");

4 个答案:

答案 0 :(得分:2)

您需要做的就是

mysql_query("UPDATE `data` SET `offerends` = `offerends` + INTERVAL 2 DAY WHERE id=$id");

尤其是,请勿删除该条目。您无法更新不存在的内容。 ;)

另一个重要注意:我不是程序员,但我敢打赌, SQL Injections 这段代码并不安全。不要直接使用数据,正确地逃避它。阅读有关该主题的内容!

答案 1 :(得分:0)

我很确定你的SQL应该是

UPDATE `data` SET `offerends`='$date2' WHERE id=$id

http://dev.mysql.com/doc/refman/5.0/en/update.html

调整语言特定的详细信息(就像那些反引号一样)

更新:更改了mysql文档的链接。以前是w3schools。老实说虽然没关系,但我链接它的唯一原因是显示

的sql语法
UPDATE [tablename] SET [columnNname] = [value] WHERE [columnname] = [value]

答案 2 :(得分:0)

mysql_query(“UPDATE offerends SET $date2 = DATE_ADD(offerends,INTERVAL 2 DAY)WHERE id ='$ id'”);

答案 3 :(得分:-1)

mysql_query("UPDATE `offerends` SET `$date2`= DATE_ADD(offerends,INTERVAL 2 DAY) WHERE id=$id");