仍然用PHP和mysqli弄湿了,还有很多需要学习的东西,但此时此问题是我最重要的优先事项之一。
我做了一些关于这个问题的研究,但是老实说,我现在已经被我的水平相当复杂的东西所淹没。我想找到最简单,最有效的方法来“自动”生成大量页面,每个页面都包含不同的数据。
以下第1页代码的示例是极简化,因为实际页面实际上有更多东西,但我希望简化的示例能够说明我的观点。
<?php
$servername = "servername";
$username = "username";
$password = "password";
$db= "db";
$conn = mysqli_connect("servername","username","password","db");
$query = "SELECT word FROM demo WHERE group=1";
$result = $conn->query($query);
$row = mysqli_fetch_assoc($result);
$word = $row['word'];
echo $word;
?>
在我的表格中,我有/将会在“组”列中有500个条目(记录?),编号为1,2,3等,一直到500。 为了我的特定目的,我绝对需要创建尽可能多的在线页面 - 在这个例子中,500页。
第2页的回声必须引用第2组,第3页的回声必须引用第3组,依此类推。
显然,有一种方法可以做到这一点,无需复制和粘贴代码500次,并手动更改每个代码组!哈哈。但最简单的方法是什么?提前感谢您的任何理解和帮助,无论哪种方式,都有一个非常棒的一天。
答案 0 :(得分:0)
如果我正确理解您,我相信您正在等待动态地从数据库创建页面。您可以在请求http://yoursite.com/page.php?group=1.
中使用get变量
然后在您的代码中更新您的查询:
$query = "SELECT word FROM demo WHERE group=".$_GET['group'];
该查询不安全,因为任何用户都可以将原始mysql注入$ _GET [&#39; group&#39;]变量。
$group = mysqli_real_escape_string($conn, $_GET['group']);
$query = "SELECT word FROM demo WHERE `group`='$group'";
这更安全。
答案 1 :(得分:0)
因此,PHP将在其访问的任何目录中默认查找名为index.php
的文件。您可以将此类文件放在public_html或www的根目录中,也可以放在您的站点访问的位置。现在,在此文件中,您可以执行以下操作:
<?php
if($_GET['group']){ //Make sure you have the var
$query = "SELECT word FROM demo WHERE `group`=?"; //The query with param
if ($stmt = mysqli_prepare($conn, query){ // try it out
mysqli_stmt_bind_param($stmt, "i", $_GET['group']); // bind the data
$stmt->execute(); //run it
$result = $stmt->get_result(); // get results
//use result to echo and stuff
}
} else {
//Do something incase there is not a group specified.
echo "Nothing here";
}
?>
现在,当您访问自己的网站时,您将获得类似“localhost / index.php”的内容,并在此处看到Nothing,但如果您输入localhost/index.php?group='55'
,则可以访问结果中的第55页数据。