The ajax call returns the php interface and returns the json data ajax jsonp ajax json instance ajax gets the background json number

WBOY
Release: 2016-07-29 08:49:21
Original
1129 people have browsed it

php code is as follows:

header('Content-Type: application/json'); header('Content-Type: text/html;charset=utf-8'); $email = $_GET['email']; $user = []; $conn = @mysql_connect("localhost","Test","123456") or die("Failed in connecting database"); mysql_select_db("Test",$conn); mysql_query("set names 'UTF-8'"); $query = "select * from UserInformation where email = '".$email."'"; $result = mysql_query($query); if (null == ($row = mysql_fetch_array($result))) { echo $_GET['callback']."(no such user)"; } else { $user['email'] = $email; $user['nickname'] = $row['nickname']; $user['portrait'] = $row['portrait']; echo $_GET['callback']."(".json_encode($user).")"; } ?>
Copy after login
js code is as follows:

Copy after login

Encountered two problems:

1. The first problem:

Uncaught SyntaxError: Unexpected token :

The solution is as follows:

This has just happened to me, and the reason was none of the reasons above. I was using the jQuery command getJSON and addingcallback=?to use JSONP (as I needed to go cross-domain), and returning the JSON code{"foo":"bar"}and getting the error.

This is because I should have included the callback data, something likejQuery17209314005577471107_1335958194322({"foo":"bar"})

Here is the PHP code I used to achieve this, which degrades if JSON (without a callback) is used:

$ret['foo']="bar"; finish();function finish(){ header("content-type:application/json");if($_GET['callback']){print $_GET['callback']."(";}print json_encode($GLOBALS['ret']);if($_GET['callback']){print")";}exit;}
Copy after login

Hopefully that will help someone in the future.

2. The second question:

Parse json data. As you can see from the above javascript, I did not use the jquery.parseJSON() methods. I started using these methods, but the error

VM219:1 Uncaught SyntaxError: Unexpected token o in JSON at position 1

was always reported. , later I didn’t use the jquery.parseJSON() method, but everything was normal. Do not know why.

The above introduces how the ajax call returns the php interface and returns json data, including the content of ajax and json. I hope it will be helpful to friends who are interested in PHP tutorials.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!