2012-04-09 92 views
0

我想添加当前日期(不是时间,如果我有选项),也是一个月后到我的MYSQL数据库的日期,我不断gettin下面的错误:PHP/PDO插入当前日期加上一个月到MYSQL

Parse error: syntax error, unexpected T_LNUMBER in *myfile* on line 45 

我来插入数据功能如下:

function add_zipcode($zip, $adminID, $email) 
{ 
    global $db; 
    $query = ' 

     INSERT INTO zip_owners (zip, email, adminID, started, transferred, expires) 
     VALUES (:zip, :email, :adminID, :started, :transferred, :expires)'; 
    try{ 
     $statement = $db->prepare($query); 
     $statement->bindValue(':zip', $zip); 
     $statement->bindValue(':email', $email); 
     $statement->bindValue(':adminID', $adminID); 
     $statement->bindValue(':started', now()); 

     $statement->bindValue(':transferred', now()); 
     $statement->bindValue(':expires', DATE_ADD(now(), INTERVAL 1 MONTH)); 
     $statement->execute(); 
     $statement->closeCursor(); 
    } 
    catch (PDOexception $e) 
    { 
     $error_message = $e->getMessage(); 
     echo "<p>Database Error: $error_message </p>"; 
     exit(); 
    } 
} 

问题线是这一个:

$statement->bindValue(':expires', DATE_ADD(now(), INTERVAL 1 MONTH)); 

我不太确定为什么这个语法不起作用。

我的目标是能够比较选择行以返回在当前日期的一周内提交过期行的行的日期。

+0

我真的不知道为什么人们投票向下类似这样的问题。而且他们有时不会给出投票的理由,他们也不回答。下来的选民告诉我们这个问题有什么不对? – Musa 2013-03-03 07:55:30

回答

6

引用你的MySQL语句,它们是字符串PHP:

$statement->bindValue(':expires', 'DATE_ADD(now(), INTERVAL 1 MONTH)');