我试图在sql查询中放入一系列php变量。
我理解它的方式,看起来应该是这样的
Db_DbHelper::query('insert into shop_order_notifications(order_id, message, created_at)
values ('.$order->id.','.$message.','.$emailPubDate.')' );
但是,由于某种原因,它无法正常工作。所有变量和数据库列都在那里,当我用简单的字符串替换PHP变量进行测试时,它们可以工作。
有人能告诉我这是否是正确的语法?
谢谢
答案 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}')" );