首页 > web前端 > js教程 > 正文

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

亚连
发布: 2018-05-24 16:29:11
原创
1465 人浏览过

这篇文章主要介绍了使用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。

先贴上网上搜到的代码:

<?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&#39;);
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 ));
?>
登录后复制

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

基于h5的history改善ajax列表请求体验

简单谈谈AJAX核心对象

基于ajax的简单搜索实现方法

以上是使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题该如何解决的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!