php – 致命错误:在非对象上调用成员函数get_results()(jQuery From Plugin&WordPress)

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 致命错误:在非对象上调用成员函数get_results()(jQuery From Plugin&WordPress)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试在wordpress插件中使用jquery的Form插件.我正在关注这个 example.我已经将我的脚本排队并构建了我的表单.在csf_form_handler.PHP中,相当于示例的json-echo.PHP,我可以访问在我的表单中选择的项目(我有一个radiobutton组).

我的目标是使用SELECT语句中表单中选择的值来从自定义wordpress数据库表返回数据.

$csf_selected_sport = $_POST['csf_radiobutton_group_sport'];

global $wpdb;

$csf_db_table = $wpdb->PRefix . "activITy";


$csf_data = $wpdb->get_results($wpdb->prepare("
            SELECT *
            @R_777_2150@ " .$csf_db_table. "
            WHERE  " . $csf_selected_sport ." "));

不幸的是,我得到了:

csf_form_handler.PHP中的上述代码不在函数中.我不知道是否有所作为.

如何更改代码以便我可以使用$wpdb

谢谢.

解决方法

在编写插件时,最好将数据处理保存在插件的主文件中(即不将其发送到单独的文件中),并激活相应处理它的函数.基本上,您可以将表单的操作设置为指向插件文件或包含表单的页面.

假设您正在处理的表单显示站点的前端,侧栏上.要在用户单击“提交”时处理来自该表单的数据,您可以在我们的插件文件中创建一个函数,例如:

function $csf_get_data(){

global $wpdb; //since your this function is in your plugin’s file,$wpdb should be available,so no errors here! =)

$csf_selected_sport = $_POST['csf_radiobutton_group_sport'];

$csf_db_table = $wpdb->prefix . "activity";

$csf_data = $wpdb->get_results($wpdb->prepare("
            SELECT *
            From " .$csf_db_table. "
            WHERE  " . $csf_selected_sport ." ")); 

    //do your stuff with $csf_data
}

//Now run it everytime the plugin is run
if(isset($_POST[‘submit’])){
    $csf_get_data();
}

现在,您可以设置表单操作的属性以将数据发送到同一页面,该页面将能够使用上述功能处理它.你可以使用:

action=””

要么

action="<?PHP the_PErmalink()?>"

请注意:为了确保数据来自您的网站(尤其是公共表单),请记住使用wp_nonce_field()创建一个nonce字段,可以通过wordpress通过wp_nonce()验证:http://codex.wordpress.org/Function_Reference/wp_nonce_field

希望有所帮助,

VQ.

脚本宝典总结

以上是脚本宝典为你收集整理的php – 致命错误:在非对象上调用成员函数get_results()(jQuery From Plugin&WordPress)全部内容,希望文章能够帮你解决php – 致命错误:在非对象上调用成员函数get_results()(jQuery From Plugin&WordPress)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。