繁体   English   中英

如何从PHP到jQuery 1检索回声数据1

[英]how to retrieve echo data from php to jquery 1 by 1

我有一个单击的JQuery,它将php查询发送到MySql,然后我想在JQuery上将数据一一发送回去。

但是我只知道如何将结果从php发送回整个JQuery。

我目前的JQuery:

$(function() {
    $(".img_thumb_holder").on("click", function() {
        $.ajax({
        type: "POST",
        url: "CMS/PHP/retrieveAuthorDetails.php",
        success: function(data) {
                alert(data);
            }
        });
    });
});

我目前的php:

<?php
include 'dbAuthen.php';
$sql = "SELECT * FROM users WHERE Name = 'james'";

$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result))
{
    echo $row['UserID'];;
    echo $row['EmailAddr'];
}
?>

输出都是UserID和EmailAddr,我不知道如何只显示UserID或EmailAddr

我尝试过alert(data [0]),但是它只显示结果的一个字母。有关如何执行此操作的任何想法?

更新:在肖恩的帮助下,我有了当前更新的代码

jQuery的:

$(function() {
    $(".img_thumb_holder").on("click", function() {
        $.ajax({
        type: "POST",
        dataType: "json",
        url: "CMS/PHP/retrieveAuthorDetails.php",
        success: function(data) {
                $.each(data, function() {
                    var userid = data.userid;
                    var useremail = data.email;
                    // i think there something wrong with this as it will keep repeating storing the userid and email for each data.. can someone verify?
                });
            }
        });
    });
});

PHP

<?php
include 'dbAuthen.php';
$sql = "SELECT * FROM users WHERE Name = 'honwenhonwen'";

$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result))
{
    $arr = array(
        "userid" => "HonWen",
        "email" => "honwen@hotmail.com"
    );
}

echo json_encode($arr);
?>

在您的php中,将结果保存到数组中-

<?php
include 'dbAuthen.php';
$array = array(); // create a blank array
$sql = "SELECT * FROM users WHERE Name = 'james'";
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result))
{
    // add each result to the array
    $array[] = array('UserID'=> $row['UserID'], 'EmailAddr'=> $row['EmailAddr']);
}

echo json_encode($array); // json_encode() the array
?>

然后在js / ajax中,您可以遍历每个值

$(function() {
    $(".img_thumb_holder").on("click", function() {
        $.ajax({
          type: "POST",
          url: "CMS/PHP/retrieveAuthorDetails.php",
          success: function(data) {
            // loop through each returned value
            $.each(data, function(){
                  //alert each result, this is just an example as alert() for each result is not a great idea
                  alert("UserID:"+ this.UserID + " EmailAddr:" + this.EmailAddr);
            });
          }
        });
    });
});

jQuery的

$(function() {
        $(".img_thumb_holder").on("click", function() {
            $.ajax({
            type: "POST",
            dataType: "json",
            url: "CMS/PHP/retrieveAuthorDetails.php",
            success: function(data) {
                    $.each(data, function() {
                        var userid = data.userid;
                        var useremail = data.email;
                        // i think there something wrong with this as it will keep repeating storing the userid and email for each data.. can someone verify?
                    });
                }
            });
        });
    });

PHP

<?php
include 'dbAuthen.php';
$sql = "SELECT * FROM users WHERE Name = 'honwenhonwen'";

$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result))
{
    $arr = array(
        "userid" => "HonWen",
        "email" => "honwen@hotmail.com"
    );
}

echo json_encode($arr);
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM