NextGen插件和SQL语法错误

时间:2013-10-23 13:14:42

标签: php sql wordpress syntax nextgen-gallery

我正在尝试动态获取NextGen图库ID并获取SQL语法错误

  

#1064 - You have an error in your SQL syntax

看一下我犯错的代码

<?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'");
?>

或者我可能做错了吗?

1 个答案:

答案 0 :(得分:1)

$galleryid很可能具有意外价值,但您应该使用Wordpress为您的查询提供的prepare()方法:

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

如果要测试查询,可以获取prepare()的输出并在phpMyAdmin中运行。