使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题该如何解决

发布时间:2022-04-17 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题该如何解决脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

无聊做了个www.jiazhuangma.com,技不过关写不好后台,就想直接读wordPress里的数据。做ajax读后台数据时在网上随便搜了一段代码使用wordPRess $wpdb类MySQL数据库,就是这么一随便,搜到了别人的去头去尾的code,开始了我的改错之旅。

主要问题有:

1,non-object

2,json中汉字,/被转码

3,chrome可以正常访问php文件,ie显示http 404,ajax时头部显示404,但是响应正文正确,是我想要的json。

先贴上网上搜到的代码:

<&#63;php
global $wpdb;
$a = $wpdb->get_results(“SELECT ID,post_tITle From wp_posts ″);
echo json_encode($a );
?>

这时会报错,non-object;

网上有人说可以添加require_once(‘wp-blog-header.php');那么恭喜你中奖了,你会发现chrome可以正常访问php文件,ie显示http 404,ajax时头部显示404,但是响应正文正确。

改为require_once(‘wp-config.php');后正常,

这时得到的json是转码后的需要将echo json_encode($a );

修改为echo str_replace(“\\/”, “/”, json_encode($a,JSON_UNESCAPED_UNICODE ));结果才正确

最终结果:

<?php
require_once(‘wp-config.php');
global $wpdb;
$a = $wpdb->get_results(“SELECT wp_posts.ID,wp_posts.post_title,wp_posts.guid FROM wp_posts inner join wp_term_relationships on wp_term_relationships.object_id=wp_posts.ID where wp_term_relationships.term_taxonomy_id=3 ORDER BY wp_term_relationships.object_id DESC LIMIT 5″);
echo str_replace(“\\/”, “/”, json_encode($a,JSON_UNESCAPED_UNICODE ));
?>

以上就是小编给大家介绍的使用wordpress的$wpdb类读mySQL数据库做ajax时出现的问题该如何解决,希望对大家有所帮助

脚本宝典总结

以上是脚本宝典为你收集整理的使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题该如何解决全部内容,希望文章能够帮你解决使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题该如何解决所遇到的问题。

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

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