在sql查询中放入一系列php变量?

时间:2014-04-23 09:22:49

标签: php sql

我试图在sql查询中放入一系列php变量。

我理解它的方式,看起来应该是这样的

        Db_DbHelper::query('insert into shop_order_notifications(order_id, message, created_at)
        values ('.$order->id.','.$message.','.$emailPubDate.')' );

但是,由于某种原因,它无法正常工作。所有变量和数据库列都在那里,当我用简单的字符串替换PHP变量进行测试时,它们可以工作。

有人能告诉我这是否是正确的语法?

谢谢

3 个答案:

答案 0 :(得分:3)

我认为你错过了引号..

Db_DbHelper::query('insert into shop_order_notifications (order_id, message, created_at)
        values ("'.intval($order->id).'", "'.addslashes($message).'", "'.addslashes($emailPubDate).'")' );

答案 1 :(得分:1)

将您的查询更改为此

$id=$order->id;
Db_DbHelper::query('insert into shop_order_notifications(order_id, message, created_at)
        values ('$id','$message','$emailPubDate')' );

答案 2 :(得分:1)

首先,确认SQL语法错误或其他?获取php错误日志。

你可以测试一下:

Db_DbHelper::query("insert into shop_order_notifications(order_id, message, created_at) values ({$order->id},'{$message}','{$emailPubDate}')" );