仍然让我的
脚湿润于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 次并手动更改每个代码中的组! 哈哈。 但是最简单的方法是什么?
提前感谢您的任何理解和帮助,无论哪种方式,祝您度过美好的一天。
如果我理解正确,我相信您正在等待从数据库动态创建页面。您可以在请求中使用 get 变量http://yoursite.com/page.php?group=1.
然后在代码中更新查询以执行:
$query = "SELECT word FROM demo WHERE group=".$_GET['group'];
该查询是不安全的,因为任何用户都可以将原始mysql注入$_GET['group']变量中。
$group = mysqli_real_escape_string($conn, $_GET['group']);
$query = "SELECT word FROM demo WHERE `group`='$group'";
这样就安全多了。
所以 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"之类的内容,并在此处看到"什么都没有",但是如果您键入localhost/index.php?group='55'
,您将可以访问结果中的第55页数据。