gpt4 book ai didi

javascript - 使用 AJAX 从 PHP 检索数据发送到不同的 PHP 文件

转载 作者:行者123 更新时间:2023-11-30 00:30:47 24 4
gpt4 key购买 nike

好的,我有:

查询数据库并显示查询结果的 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 关联的特定数据。有什么建议吗??

提前致谢!

最佳答案

我不能 100% 确定这就是您想要的,但这是一种方法。

这是您的第一个 php 文件。我向其中添加了一个 onclick 监听器,因此当用户单击一行时,它将触发传递 $row['id'] 变量的 JavaScript。

$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 onclick='someFunction(" . $row['id'] . ")' class='result'><div 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></div>";
}

然后将此脚本添加到页面标题。

<script>
function someFunction(d){
var response = httpGet("http://yourdomain.com/newphpfile.php?page_id=" +d);

document.getElementById('someResultArea').innerHTML = response;

}
function httpGet(theUrl)
{
var xmlHttp = new XMLHttpRequest();
xmlHttp.open( "POST", theUrl, false );
xmlHttp.send();
return xmlHttp.responseText;
}
</script>

那么你的新 php 文件应该执行类似这样的操作。

newphpfile.php

<?php 
session_start();

$page_id = strip_tags($_GET['page_id']);

$processResult = 'handle your result';

echo $processResult;

?>

希望这对您有所帮助。

关于javascript - 使用 AJAX 从 PHP 检索数据发送到不同的 PHP 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22536010/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com