Home > Backend Development > PHP Tutorial > ajax-return value - The demo of php returning json data is as follows. What causes this problem?

ajax-return value - The demo of php returning json data is as follows. What causes this problem?

WBOY
Release: 2016-09-12 17:44:45
Original
1012 people have browsed it

<code><?php
// Include ezSQL core
include_once('../include/ez_sql_core.php');

// Include ezSQL database specific component
include_once('../include/ez_sql_postgresql.php');
$username='';
$password='';
$result='';
if(!empty($_POST)){
    $username = $_POST["username"];
    $password = $_POST["password"];
}else{
    
}

$db = new ezSQL_postgresql('i2soft', 'i2s@Shanghai', 'sdata', '127.0.0.1');


///$user = $db->query("select id from user2 where name = 'admin' and password ='admin'");
//$user_details = $db->get_row(null, OBJECT, 0);
//var_dump($user_details) ;

$sql = sprintf("select * from user2 where name='%s' and password='%s'",$username,$password);
//echo $sql;
//select * from user2 where name='admin' and password='admin'
$user=$db->get_results($sql);

//var_dump($user);
//array(1) { [0]=> object(stdClass)#5 (3) { ["id"]=> string(1) "1" ["name"]=> string(5) "admin" ["password"]=> string(5) "admin" } }
if($user){
  $result='0';
   
}else{
   $result='-1';
  
}

$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo json_encode($arr);
?>

</code>
Copy after login
Copy after login

php returns json data if it contains

<code>$user=$db->get_results($sql);  </code>
Copy after login
Copy after login

This line of code ajax returns error.

If this line of code is removed, the ajax result is success
There is no problem with this line of code. I have printed the returned data, and the commented array is printed out. If I do not need the ajax request server code, I can directly submit the form. Tested the code.

The html code is as follows:

<code><!DOCTYPE html>
<html lang="zh-CN">

    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta name="description" content="">
        <meta name="author" content="">
        <link rel="icon" href="../media/image/favicon.ico">
        <title>英方I2Active</title>
        <!-- Bootstrap core CSS -->
        <link href="../media/bootstrap/css/bootstrap.min.css" rel="stylesheet">
        <!-- Custom styles for this template -->
        <link href="../media/css/login.css" rel="stylesheet">
        <script type="text/javascript" src="../media/js/jquery-1.9.1.js"></script>
    </head>

    <body>
        <div class="container">
            <form class="form-signin" role="form" action="">
                <img src="../media/image/logo.png" />
                <h2 class="form-signin-heading">I2Active登录</h2>
                <input  id="username" type="text" class="form-control" placeholder="User name" required autofocus >
                <input id="password" type="password" class="form-control" placeholder="Password" required>
                <div class="checkbox">
                    <label>
                        <input type="checkbox" value="remember-me"> 记住密码
                    </label>
                </div>
                <button id="login" class="btn btn-lg btn-primary btn-block" >登录</button>
            </form>
        </div>
        <!-- /container -->
        <script type="text/javascript">  
            
            $("#login").click(function () {
                var username = $("#username").val();
                var password = $("#password").val();
                if(username&&password){
                    $.ajax({
                        url: '../controller/login2.php', // 跳转到 action  
                        data: {
                            'username': username,
                            'password': password
                        },
                        type: 'post',
                        cache: false,
                        dataType: 'json',
                        success: function (data) {
                            alert('ajax success');
                        },
                        error: function () {
                          alert('ajax error');
                        }
                    })
                }
            });
        
        </script>
    </body>

</html></code>
Copy after login
Copy after login

Reply content:

<code><?php
// Include ezSQL core
include_once('../include/ez_sql_core.php');

// Include ezSQL database specific component
include_once('../include/ez_sql_postgresql.php');
$username='';
$password='';
$result='';
if(!empty($_POST)){
    $username = $_POST["username"];
    $password = $_POST["password"];
}else{
    
}

$db = new ezSQL_postgresql('i2soft', 'i2s@Shanghai', 'sdata', '127.0.0.1');


///$user = $db->query("select id from user2 where name = 'admin' and password ='admin'");
//$user_details = $db->get_row(null, OBJECT, 0);
//var_dump($user_details) ;

$sql = sprintf("select * from user2 where name='%s' and password='%s'",$username,$password);
//echo $sql;
//select * from user2 where name='admin' and password='admin'
$user=$db->get_results($sql);

//var_dump($user);
//array(1) { [0]=> object(stdClass)#5 (3) { ["id"]=> string(1) "1" ["name"]=> string(5) "admin" ["password"]=> string(5) "admin" } }
if($user){
  $result='0';
   
}else{
   $result='-1';
  
}

$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo json_encode($arr);
?>

</code>
Copy after login
Copy after login

php returns json data if it contains

<code>$user=$db->get_results($sql);  </code>
Copy after login
Copy after login

This line of code ajax returns error.

If this line of code is removed, the ajax result is success
There is no problem with this line of code. I have printed the returned data, and the commented array is printed out. If I do not need the ajax request server code, I can directly submit the form. Tested the code.

The html code is as follows:

<code><!DOCTYPE html>
<html lang="zh-CN">

    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta name="description" content="">
        <meta name="author" content="">
        <link rel="icon" href="../media/image/favicon.ico">
        <title>英方I2Active</title>
        <!-- Bootstrap core CSS -->
        <link href="../media/bootstrap/css/bootstrap.min.css" rel="stylesheet">
        <!-- Custom styles for this template -->
        <link href="../media/css/login.css" rel="stylesheet">
        <script type="text/javascript" src="../media/js/jquery-1.9.1.js"></script>
    </head>

    <body>
        <div class="container">
            <form class="form-signin" role="form" action="">
                <img src="../media/image/logo.png" />
                <h2 class="form-signin-heading">I2Active登录</h2>
                <input  id="username" type="text" class="form-control" placeholder="User name" required autofocus >
                <input id="password" type="password" class="form-control" placeholder="Password" required>
                <div class="checkbox">
                    <label>
                        <input type="checkbox" value="remember-me"> 记住密码
                    </label>
                </div>
                <button id="login" class="btn btn-lg btn-primary btn-block" >登录</button>
            </form>
        </div>
        <!-- /container -->
        <script type="text/javascript">  
            
            $("#login").click(function () {
                var username = $("#username").val();
                var password = $("#password").val();
                if(username&&password){
                    $.ajax({
                        url: '../controller/login2.php', // 跳转到 action  
                        data: {
                            'username': username,
                            'password': password
                        },
                        type: 'post',
                        cache: false,
                        dataType: 'json',
                        success: function (data) {
                            alert('ajax success');
                        },
                        error: function () {
                          alert('ajax error');
                        }
                    })
                }
            });
        
        </script>
    </body>

</html></code>
Copy after login
Copy after login

An error occurred during SQL execution and PHP threw an error. It is recommended that you use a web browser to access it directly to see the reason

Look at the code of the ezSQL_postgresql class

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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template