检查wordpress查询是否成功

时间:2016-02-17 19:32:58

标签: php wordpress wpdb

我正在执行如下查询。

global $wpdb;

$table_name = $wpdb->prefix . 'prousers';

$results = $wpdb->get_results("INSERT into $table_name 
                          (name,gender,mailid,empid,address,phone)
                           VALUES(
                           '".$InputName."','".$gender."','".$InputEmail."',
                           '".$emp_id."','".$address."','".$phn_num."'
                           )", OBJECT );

一切进展顺利。我只是想验证它,所以我做了以下:

if($results) { 
    echo'success';
} else {
    echo "error";
}

值正确地插入到表中,但它显示失败消息(它打印"错误")。

为什么会这样?

3 个答案:

答案 0 :(得分:2)

我建议您使用$wpdb->insert( $table, $data, $format );

然后,您将获得$ wpdb-> insert_id中的详细信息以写入条件。

答案 1 :(得分:1)

您需要$wpdb->insert();代替$wpdb->get_result();

$wpdb->insert( "INSERT into $table_name (name,gender,mailid,empid,address,phone) VALUES('".$InputName."','".$gender."','".$InputEmail."', '".$emp_id."','".$address."','".$phn_num."')", OBJECT );

在此之后使用它来获取最后一个ID:

$lastid = $wpdb->insert_id;

并检查查询执行与否:

if($lastid > 0) { 
    echo'success'; 
} 
else { 
    echo "error"; 
}

答案 2 :(得分:0)

您可以将die函数与get_results()方法一起使用,

 global $wpdb;
        $table_name = $wpdb->prefix . 'prousers';

                $results = $wpdb->get_results( "INSERT into $table_name 
                          (name,gender,mailid,empid,address,phone)
                          VALUES('".$InputName."','".$gender."','".$InputEmail."',

                        '".$emp_id."','".$address."','".$phn_num."')", OBJECT ) or die('Error while query run');