2011-06-16 19 views
0

我創建了一個新的mySql表,我需要第一個字段是一個索引和一個鍵。
我不確定我是否有正確的術語,但我只需要該字段在每次插入時自動遞增1。
所以我將該字段定義爲index並給它auto_increment屬性。
現在我嘗試插入的第一行是這樣的:首先wpdb插入到mySql新表不起作用

$wpdb->insert('wp_branches', array(user_id=>$user_id, branchName=>$bname)); 

索引/鍵字段branchId從該查詢缺少,因爲我的分貝數到自動給它的值爲1,因爲它是第一個插入,然後每增加一個插入就增加它。
出於某種原因,該行未被插入,並且db空着。
我在做什麼錯?

+0

發現問題。錯誤的字段名稱。 'user_id'應該是'userId'。 – Ash 2011-06-16 10:01:51

回答

1

修改,以便:

$wpdb->insert('wp_branches', array('user_id' => $user_id, 'branchName' => $bname)); 
+0

謝謝,但它沒有區別。 – Ash 2011-06-16 09:27:46

4

嘗試像這樣:

$sql = $wpdb->prepare(
    "INSERT INTO `wp_branches` (`user_id`,`branchName`) values (%d,%s)", 
     $user_id, $bname); 

$wpdb->query($sql); 

這將保護您免受 「注射」 了。

+0

@ЯрославРахматуллин,我發現問題(錯誤的字段名稱),但感謝您的建議,以防止注射。我會用它。 – Ash 2011-06-16 10:02:59

+0

當然。 NP。試試$ wpdb-> show_errors();和$ wpdb-> print_error();下一次;) – 2011-06-16 10:54:46

+0

@ЯрославРахматуллин,另一個偉大的建議。再次感謝。 – Ash 2011-06-21 09:59:40