从数据库中获取变量

时间:2017-02-14 作者:Yasa

我正在努力payment_transaction_id 但它不起作用。同样的代码可以从用户那里获取信息,我不明白为什么不能获取数据。

这就是创建表的方式(该表正在工作,并且已经包含数据)。

require_once( ABSPATH . \'wp-admin/includes/upgrade.php\' );
    dbDelta($sql);
    $table_name2 = $wpdb->prefix . \'iyzico_order_refunds\';
    $sql = "CREATE TABLE $table_name2 (
        iyzico_order_refunds_id INT(11) NOT NULL AUTO_INCREMENT,
        order_id INT(11) NOT NULL,
        item_id INT(11) NOT NULL,
        payment_transaction_id INT(11) NOT NULL,
        paid_price VARCHAR(50),
        total_refunded VARCHAR(50),
        PRIMARY KEY  (iyzico_order_refunds_id)
    ) $charset_collate;";
    dbDelta($sql);
我正在尝试使用以下内容提取事务ID:

$payment_transaction_id = $wpdb->get_var( "SELECT payment_transaction_id FROM $wpdb->iyzico_order_refunds WHERE order_id=769 AND item_id=760" );
我做错了什么?

1 个回复
最合适的回答,由SO网友:Dave Romsey 整理而成

将表前缀前置到iyzico_order_refunds 而不是$wpdb 对象:

$payment_transaction_id = $wpdb->get_var( 
    "SELECT payment_transaction_id FROM {$wpdb->prefix}iyzico_order_refunds} WHERE order_id=769 AND item_id=760"
);