3

我的代码是正确的(我已经编程了 13 年),但是由于某种原因,当我在 WHERE 子句的 SELECT 查询中使用变量时,我没有得到任何结果。如果我对其进行硬编码,它可以工作。这怎么可能?让我大开眼界...

$track = $wpdb->get_row($wpdb->prepare("SELECT tracking_id, order_id, outbound_tracking_number, return_tracking_numbers FROM wp_woocommerce_trackingnumbers WHERE order_id = %s", $o_id));

谢谢!

4

1 回答 1

5

我认为应该是(%s应该是%d

$track = $wpdb->get_row($wpdb->prepare("SELECT tracking_id, order_id, outbound_tracking_number, return_tracking_numbers FROM wp_woocommerce_trackingnumbers WHERE order_id = %d", $o_id));

%s对于字符串、%d数字和变量$o_id,对我来说听起来像是一个整数。

于 2013-06-09T00:34:59.357 回答