2015-04-07 40 views
0

我正在嘗試做一些簡單的事情。我認爲我的代碼看起來很合理,但由於某種原因,$wpdb->insert_id;一直是空的?我在這裏做錯了什麼?我是否正確地傳遞了變量?我甚至嘗試將$wpdb->insert_id;存儲在$_SESSION中,但它仍然是空的。

function insert_stuff() { 
    global $wpdb; 
    $wpdb->insert('mytable', 
     array(
     'column1' => $_REQUEST['formitem1'], 
     'column2' => $_REQUEST['formitem2'], 
     ) 
    ); 
    global $lastid; 
    $lastid = $wpdb->insert_id; 
} 
add_action('add_to_cart', 'insert_stuff'); 

function update_stuff() { 
    global $wpdb; 
    global $lastid; 

    $wpdb->update('mytable', array('column3' => 'newvalue'), array('id' => $lastid), array('%s'), array('%d')); 
} 
add_action('thank_you_page', 'update_stuff'); 

回答

0

看起來你缺少與$ wpdb->插入一個數組..

$wpdb->insert(
'table', 
    array(
    'column1' => $var1, 
    'column2' => $var2, 
), 
    array(
    '%d', 
    '%s', 
) 
); 

注:%d =數字..%S =串...

祝你好運。

相關問題