[英]Drupal module mysql error
在某些站點的模塊中,我有下一個代碼
function q_cart_add($node) {
global $user;
//drupal_set_title('Добавление товара в корзину');
drupal_set_title('Товар добавлен в корзину');
if (!user_access('add to cart'))
return '<p>У вас не достаточно прав для добавления в корзину</p>';
if ($node -> type != 'kartochka')
return '<p>В корзину можно положить только товар</p>';
$added = false;
if ($user -> uid) {
$added = db_result(db_query('SELECT `added` FROM {q_cart} WHERE `uid` = %d, `nid` = %d', $user -> uid, $node -> nid));
if (!$added) {
db_query('INSERT INTO {q_cart} (`uid`, `nid`, `added`) VALUES (%d, %d, %d)', $user -> uid, $node -> nid, time());
}
} else {
foreach (isset($_COOKIE['q_cart']) && ($cart = json_decode($_COOKIE['q_cart'])) ? $cart : array() as $item)
if ($item -> nid == $node -> nid) {
$added = true;
break;
但是在drupal(6)的管理面板中的報告中,我有錯誤:
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 ' `nid` = 806' at line 1 query:
SELECT `added` FROM q_cart WHERE `uid` = 1, `nid` = 806 in file...
此代碼有什么問題?
問題是第一個查詢的這一部分:
WHERE `uid` = %d, `nid` = %d
條件必須用AND
或OR
分隔:
SELECT `added` FROM {q_cart} WHERE `uid` = %d AND `nid` = %d
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.