使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题该如何解决
程序员文章站
2022-06-09 09:26:08
无聊做了个,技术不过关写不好后台,就想直接读wordpress里的数据。做ajax读后台数据时在网上随便搜了一段代码使用wordpress $wpdb类读mysql数据库,...
无聊做了个,技术不过关写不好后台,就想直接读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'); 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时出现的问题及解决
-
使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题及解决,wordpresswpdb
-
使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题及解决
-
使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题及解决,wordpresswpdb
-
使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题该如何解决
-
使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题及解决,wordpresswpdb_PHP教程
-
使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题该如何解决
-
使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题及解决,wordpresswpdb_PHP教程