WordPress $wpdb->get_row() 查询不适用于变量,但适用于硬编码 [英] WordPress $wpdb->get_row() Query Won't Work With Variable, But Works With Hardcoded

查看:18
本文介绍了WordPress $wpdb->get_row() 查询不适用于变量,但适用于硬编码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

My code is correct (I've been programming for 13 years), but for some reason when I use a variable in a SELECT query in the WHERE clause, I get no result. If I hardcode it, it works. How could this be? Blowing my mind...

$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));

谢谢!

推荐答案

我觉得应该是 (%s 应该是 %d)

I think it should be (%s should be %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 对我来说听起来像是一个整数.

%s for strings and %d for digits and variable $o_id sounds like an integer to me.

这篇关于WordPress $wpdb->get_row() 查询不适用于变量,但适用于硬编码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆