【发布时间】:2014-03-20 14:28:50
【问题描述】:
好的,我有:
查询数据库并显示查询结果的 PHP 文件, 使用 AJAX 显示结果的 HTML 文件和 我需要将数据从第一个 PHP 文件发送到的另一个 PHP 文件。
我该怎么做?
我的第一个 PHP 文件显示:
$result = mysqli_query($db_server, $query);
if (!$result) die("Database access failed: " . mysqli_error($db_server));
while($row = mysqli_fetch_array($result)){
$str_shopresult .= "<div class='result'><a id='shoplink' href='#shop'><strong><div id='hiddenid'>" .
$row['id'] . "</div>" .
$row['name'] . "</strong><br><br>" .
$row['address'] . "<br><br><i>" .
$row['sold'] . "</i></div></a>";
}
所以 AJAX 将其引入并显示在 HTML 中。有没有办法在单击链接时发送 ID 字段,以便在另一个 PHP 文件中使用它来显示该特定 ID 的数据。
$( "#result" ).click(function() {
$.ajax({
type: "POST",
url: "external-data/shop.php",
data: $("#hiddenid"),
success: function (data) {
$("#individualshop").load("external-data/shop.php");
}
});
这样来自#hiddendiv ($row ['ID']) 的数据将被发送到新的PHP 文件。这不起作用。
shop.php 有代码:
//get shop ID
$shopid = $_POST['ID'];
mysqli_select_db($db_server, $db_database);
$query = "SELECT * FROM shops WHERE ID='$shopid'";
$result = mysqli_query($db_server, $query);
if (!$result) die("Database access failed: " . mysqli_error($db_server));
while($row = mysqli_fetch_array($result)){
$str_shops .= "<div class='searchresult'><strong>" .
$row['name'] . "</strong><br><br>" .
$row['address'] . "<br><br><i>" .
$row['sold'] . "</i></div>";
}
但我不确定如何检索 ID?
基本上我需要能够点击每个搜索结果并让另一个 PHP 文件引入与搜索结果 ID 相关联的特定数据。有什么建议吗??
提前致谢!
【问题讨论】:
-
“这不起作用”是什么意思? external-data/shop.php 上的内容是什么?
-
@leonardo 我更新了上面的帖子,对不起!
-
你通过传递这个来检索 ID:
data: { id: $("#hiddenid")},而不是data: $("#hiddenid"), -
@Kathryn 看到我的回答,这个
$("#individualshop").load("external-data/shop.php");是为了 ajax 成功吗? -
@HüseyinBABAL 是引入 shop.php 查询的结果,但我认为我应该使用 $("#individualshop").html(data); ?
标签: javascript php jquery mysql ajax