How to convert this prepare statement to use placeholders in Wordpress $wpdb?

后端 未结 1 947
不知归路
不知归路 2021-01-26 18:33

I have a perfectly working wpdb prepare statement before Wordpress 3.5. This is my line:

$post_id = $wpdb->get_var($wpdb->prepare( \"SELECT a.post_id
              


        
相关标签:
1条回答
  • 2021-01-26 18:56

    My bad, this is so simple! Wordpress uses two placeholders %s and %d.

    %s should be used when passing strings to the database

    while:

    %d should be used for integers.

    My problem above is that I've mixed them up, I use %d for strings or %s for integers. So the problem is resolved by using the correct placeholders for your specific data type. Problem solved.

    For example if you are querying the database using id with php variable $id, the placeholder should be %d because it's integer otherwise for strings, such as names, etc. use %s.

    0 讨论(0)
提交回复
热议问题