使用 jquery AJAX 将数据发送到 php 并检索响应

Posted

技术标签:

【中文标题】使用 jquery AJAX 将数据发送到 php 并检索响应【英文标题】:send data to php with jquery AJAX and retrieve the response 【发布时间】:2015-05-02 01:43:35 【问题描述】:

我正在尝试这样做: 当用户单击包含来自 mysqli 的行的简要信息 div 时,将学生 id 发送到 id.php,然后 php 文件将通过学生 id 获取所有数据并将其回显,以便我可以使用 ajax 将其放入我原来的index.php

<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js'></script>    
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
    //in your Javascript, put
    $(document).ready ( function () 
    $("#briefinfo").click (function()
    $.ajax(  
        type: 'POST',  
        url: 'id.php', 
        var studentid = "<?php echo $studentid; ?>";
        data:  id: studentid ,
        success: function(response) 
                $("#briefinfo").html(response);
            
    );
    );
    );
        </script>

请帮忙。 这是id.php

<?php

    // connect to the database
    include('connect-db.php');
    // confirm that the 'id' variable has been set
    require_once("db.php");
        $id = $_POST['id'];
        if ($result = $mysqli->query("SELECT * FROM requests WHERE student_id=$id"))
        
                if ($result->num_rows > 0)
                
                    echo "<table border='1' cellpadding='10'>";
                    echo "<tr><th>Document #</th><th>Student #</th>
                    <th>Documents needed</th><th>Edit</th><th>Delete</th>
                    <th>recorded comment</th><th>unverify</th><th>comment</th><th>payment amount</th><th>set payment</th>
                    </tr>";


                        while ($row = $result->fetch_object())
                        
                            echo "<tr>";
                            echo "<td>" . $row->id . "</td>";
                            $studentid=$row->student_id;
                            echo "<td><a href='id.php?id=" . $row->student_id . "'>$studentid</a></td>";
                            echo "<td>" . $row->document . "</td>";
                            echo "<td><a href='records.php?id=" . $row->id . "'>Edit</a></td>";
                            echo "<td><a href='delete.php?id=" . $row->id . "'>Delete</a></td>";
                            echo "<td>" . $row->comment . "</td>";
                            echo "<td><a href='unverify.php?id=" . $row->id . "'>unverify</a></td>";
                            echo "<td><a href='comments.php?id=" . $row->id . "'>comment</a></td>";
                            echo "<td>" . $row->paymentamount . " pesos";"</td>";
                            echo "<td><a href='paymentamount.php?id=" . $row->id . "'>set amount</a></td>";
                            echo "</tr>";
                        
                        echo"<br><br>";
                        echo "</table>";
                
                else
                
                    echo "No results to display!";
                
        
        else
        
                echo "Error: " . $mysqli->error;
        

    ?>

【问题讨论】:

“内容”与什么有关?通常这将类似于 jQuery('yourdiv').html(response); 这基本上是个人资料。所以在#briefinfo 中,它有来自mysql 的学生ID、姓名等。我希望它在单击时显示更多数据(mysql 表中的每一行)。 【参考方案1】:

其实... var 是在 ajax 里面的,只要把它作为值添加到数据中就行了。

    $.ajax(
    type: 'POST',
    url: 'id.php',
    data: 
        id: "<?php echo $studentid; ?>"
    ,
    success: function(response) 
        $("#briefinfo").html(response);
    
);

【讨论】:

我只是在猜测,因为您没有显示要添加 ajax 响应的实际 HTML。 看上面。我改了,还是不行。我不知道为什么它不起作用。请帮忙 查看我对答案的补充。

以上是关于使用 jquery AJAX 将数据发送到 php 并检索响应的主要内容,如果未能解决你的问题,请参考以下文章

将二进制数据从 jQuery ajax 发送到 PHP

如何通过 AJAX 将 jquery 对象数据发送到 php?

使用 jQuery ajax 函数将 php 值发送到 php 函数

jquery ajax后混合数组对象将空数组发送到php

通过 jQuery + Ajax 将带有 Google reCaptcha v2 令牌的图像文件发送到 PHP

使用 jquery ajax 将 javascript 数组变量发送到 php 脚本(获取字符串作为输出而不是数组)