Heim > Backend-Entwicklung > PHP-Tutorial > ajax-return value – Die Demo von PHP, die JSON-Daten zurückgibt, ist wie folgt.

ajax-return value – Die Demo von PHP, die JSON-Daten zurückgibt, ist wie folgt.

WBOY
Freigeben: 2016-09-12 17:44:45
Original
1013 Leute haben es durchsucht

<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>
Nach dem Login kopieren
Nach dem Login kopieren

php gibt JSON-Daten zurück, wenn sie

enthalten
<code>$user=$db->get_results($sql);  </code>
Nach dem Login kopieren
Nach dem Login kopieren

Diese Ajax-Codezeile gibt einen Fehler zurück.

Wenn diese Codezeile entfernt wird, ist das Ajax-Ergebnis ein Erfolg.
Diese Codezeile ist kein Problem. Ich habe die zurückgegebenen Daten gedruckt und das kommentierte Array wird ausgedruckt Servercode mit Ajax, ich kann den Code direkt beim Absenden des Formulars testen.

Der HTML-Code lautet wie folgt:

<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>
Nach dem Login kopieren
Nach dem Login kopieren

Antwortinhalt:

<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>
Nach dem Login kopieren
Nach dem Login kopieren

php gibt JSON-Daten zurück, wenn sie

enthalten
<code>$user=$db->get_results($sql);  </code>
Nach dem Login kopieren
Nach dem Login kopieren

Diese Ajax-Codezeile gibt einen Fehler zurück.

Wenn diese Codezeile entfernt wird, ist das Ajax-Ergebnis ein Erfolg.
Diese Codezeile ist kein Problem. Ich habe die zurückgegebenen Daten gedruckt und das kommentierte Array wird ausgedruckt Servercode mit Ajax, ich kann den Code direkt beim Absenden des Formulars testen.

Der HTML-Code lautet wie folgt:

<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>
Nach dem Login kopieren
Nach dem Login kopieren

Es ist ein SQL-Ausführungsfehler aufgetreten, PHP hat einen Fehler ausgegeben. Es wird empfohlen, direkt über einen Webbrowser darauf zuzugreifen, um die Ursache zu ermitteln

Sehen Sie sich den Code der ezSQL_postgresql-Klasse an

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage