2011-08-30 22 views
0
$db->setQuery("UPDATE #__customers (customers_default_address_id) 
       SET (customers_default_address_id = address_book_id 
       FROM #__address_book WHERE customers_id = '.(int) $userId.')"); 

有了這個規則,我得到一個500錯誤。應該是什麼錯誤?設置正確的規則得到現在500錯誤

回答

0

你在你的UPDATE語法有一個錯誤:

$user_id = mysql_real_escape_string($user_id); 
$db->setQuery("UPDATE customers c 
      INNER JOIN address_book ab ON (...join-criterion_here...) 
      SET c.customers_default_address_id = ab.address_book_id 
      WHERE c.customers_id = '$user_id' "); 

另外,'.(int) $user_id.'伎倆並不在我的測試工作。

+0

的信息來自address_book_id,這個數字取代舊號碼customers_default_address_id的。不幸的是沒有發生任何事 – Simpel

1

我想這應該解決的問題

$address_id = tep_db_insert_id(); 

$db->setQuery(" UPDATE #_customers 
       SET customers_default_address_id = '" . (int)$address_id . "' 
       where customers_id = '" . (int) $userId . "'"); 
$db->query(); 
相關問題