php - 使用 Php & JQuery 获取 MySQL 记录

标签 php jquery mysql ajax

这是我的场景:

我有一个下拉菜单,有不同的值。选择选项“A”时,我希望它使用 JQuery 调用 Php 脚本。该 Php 脚本将进行数据库查询,返回记录 ID。当该记录 ID 返回到 javascript 时,javascript 将根据返回的 ID 将浏览器定向到特定的 URL(即/products/$ID)

现在,我拥有它,以便下拉菜单触发 javascript 函数。我还有执行数据库工作的 Php 脚本。我只是不确定 javascript 函数中应该包含什么,或者如何让它与他的 Php 脚本连接,以及我如何获得返回的数据(以及如何处理返回类型 -- xml、html 等)

我正在使用 JQuery 库和 Php 5.x。

最佳答案

一个简单的例子就是采用这样的形式

例子.php

<form id="form" name="form">        
    <select name="dropdown" id="dropdown">
        <option value="A">A</option>
        <option value="B">B</option>
        <option value="C">C</option>
        <option value="D">D</option>
    </select>

    <input type="submit" id="submit" name="submit" value="Submit!" />
</form>

然后将其与一些 JQuery 链接以拦截表单,并将其发送到 PHP 文件

JQuery.js

$(document).ready(function(){
    $("#dropdown").change(function(event) {
        $.ajax({
            type: "POST",
            url: "query.php",
            data: $('#form').serialize(),
                datatype: "json",
            success: function(data){
                var ret = jQuery.parseJSON(data);
                    // Redirect to ret.link
            }
    });
    event.preventDefault();
    });
});

然后,创建 PHP 文件来解释它

查询.php

$stmt = $sql->dbh->prepare("SELECT `Link` FROM `Links` WHERE `ID` = :id");

$stmt->bindValue(':id', $_POST['dropdown']);

$stmt->execute();

$link = $stmt->fetch()['Link'];

echo json_encode(array('link' => "{$link}"));

die();

关于php - 使用 Php & JQuery 获取 MySQL 记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5721903/

相关文章:

php - $SimpleXML->asXML() 的格式输出;

javascript - $.getJSON 返回数据后不会运行函数

sql - MySQL AVG() 值不会在每一行上重置

php - 使用 Algolia 搜索自定义查询结果集合 - Laravel

php - 在 php 上运行 cpp 二进制文件可以加快我的代码?

php - Google_Service_Directory - (403) 无权访问此资源/api

php - 如何在 WHERE 子句中使用 CASE WHEN?

javascript - 使用独特的布局设计选择下拉菜单

php - 对从 MySQL COUNT() 创建的 JSON 对象使用 $.each

php - 空白/空搜索表单字段