سؤال

I am trying to get the NextGen gallery Id dynamically and getting SQL syntax error

#1064 - You have an error in your SQL syntax

Have a look on below code where I am making mistake

<?php
global $wpdb;
global $post;
$galleryid = get_post_meta( $post->ID, 'image_gallery', true ); 
$pictures=$wpdb->get_results("SELECT * FROM wp_ngg_pictures WHERE galleryid='$galleryid'");
?>

Or may be I am doing it wrong way?

هل كانت مفيدة؟

المحلول

It's quite likely that $galleryid has an unexpected value, but nevertheless you should use the prepare() method that Wordpress provides for your queries:

$pictures = $wpdb->get_results( 
    $wpdb->prepare( 
        "SELECT * FROM wp_ngg_pictures WHERE galleryid = %d",
        $galleryid
    )
);

If you want to test the query, you can take the output of prepare() and run that in phpMyAdmin.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top