php - 使用 php 和 MySQL 创建动态页面
问题描述
我正在使用 mySQL 数据库中的“donemler”表在 main.php 中创建一个链接列表,并希望创建一个页面来显示“sikkeler”表中的数据(该表有一个外键 donemID,用作两者之间的关系表),因为用户单击它。(data.php 是 index.php 的一部分,它是一个无限滚动页面)
在这里,我尝试$row["donemID"]
使用 index.php 中的 GET 方法
调用,$k=$_GET['donemID']
但没有成功。
我也尝试使用 SESSIONS 方法,将“添加$_SESSION['donemID']=$row$row["donemID"]
到 main.php
并在 index.php 中将其调用为
$k=$_SESSION['donemID']
但它也没有用。
我想学习如何在 php 中创建页面并显示相关数据。
提前致谢!
主文件
<?php
require_once "config.php";
$sql = $conn->query("SELECT * FROM donemler ORDER BY donemID");
if ($sql->num_rows > 0) {
// output data of each row
while($row = $sql->fetch_assoc()) {
echo "<tr><td><a href='index.php?devletID=".$row["devletID"]."&donemID=".$row["donemID"]."'>" .$row["donemler"]. "</a></td></tr>";
}
} else {
echo "0 results";
}
$conn->close();
?>
索引.php
<script type="text/javascript">
var start = 0;
var limit = 20;
var reachedMax = false;
var dnmID = $_GET("donemID");
$(window).scroll(function () {
if ($(window).scrollTop() == $(document).height() - $(window).height() )
getData();
});
$(document).ready(function () {
getData();
});
function getData() {
if (reachedMax)
return;
$.ajax({
url: 'data.php',
method: 'POST',
dataType: 'text',
data: {
getData: 1,
start: start,
limit: limit,
dnmID: dnmID,
},
success: function(response) {
if (response == "reachedMax")
reachedMax = true;
else {
start += limit;
$(".results").append(response);
}
}
});
}
</script>
数据.php
<?php
if (isset($_POST['getData']) ) {
$conn = new mysqli('localhost', 'usrnm', 'pss', 'db');
$dnmID = $conn->real_escape_string($_POST['dnmID']);
$start = $conn->real_escape_string($_POST['start']);
$limit = $conn->real_escape_string($_POST['limit']);
$sql = $conn->query("SELECT * FROM sikkeler WHERE donemID='$dnmID' ORDER BY kayit_no DESC LIMIT $start, $limit");
if ($sql->num_rows > 0) {
$response = "";
while($data = $sql->fetch_array()) {
$response .= '
<tr>
<td>ICD#'.$data['kayit_no'].'</td>
<td>'.$data['donemi'].'</td>
<td><img src="coin_images/'.$data['resim'].'" border="2" width="200px" /></td>
<td>'.$data['darp'].'</td>
<td>'.$data['tarih'].'</td>
<td>'.$data['birim'].'</td>
<td>'.$data['agirlik'].'</td>
<td>'.$data['cap'].'</td>
<td>'.$data['tip'].'</td>
<td>'.$data['reference'].'</td>
</tr>
';
}
exit($response);
} else
exit('reachedMax');
}
?>
解决方案
您正在检查两种不同的请求方法:
$_POST['getData']
$k=$_GET['donemID']
由于您使用的是查询字符串,因此它是一个GET方法来检查。没有这样的变量,即getData onmain.php
推荐阅读
- macos - 如何使用 AppleScript 关闭 Safari 偏好设置窗口?
- excel - 如何使用 IF 以及 AND 和多个 OR 条件创建 Excel 公式
- ajax - 每秒使用 Ajax 请求有多安全
- python - python的subprocess.Popen()实时刷新颜色输出
- makefile - Make:递归后删除目标
- python - 将按键事件绑定到标签小部件 tkinter
- android - Android Studio“文件以错误的编码加载:'UTF-8'”和“Java文件未声明任何类”无处不在
- azure - 如何在通过 Azure 数据工厂将数据从 Azure Cosmos DB 复制到 ADLS Gen 2 时设置输出路径
- python - 希望创建显示每个月值的面板数据。需要帮助填写没有值的月份
- c - 获取一个二维数组并将其合并为一个