如何使用PHP创建数百个具有不同MySQL数据的动态页面
我在下面有一个简单的MySQL表,目前正在显示它的内容,代码在这篇文章的底部 为了演示,我在这里只包含了3条记录,但实际上我有数百条记录,并且希望找到某种方法动态生成数百个页面,其中每个页面都显示一个与数据库不同的行 例如:如何使用PHP创建数百个具有不同MySQL数据的动态页面,php,mysql,scripting,Php,Mysql,Scripting,我在下面有一个简单的MySQL表,目前正在显示它的内容,代码在这篇文章的底部 为了演示,我在这里只包含了3条记录,但实际上我有数百条记录,并且希望找到某种方法动态生成数百个页面,其中每个页面都显示一个与数据库不同的行 例如: page1.php -(contents)- Jonathan Smith page2.php -(contents)- Samantha Rafael page3.php -(contents)- Robert Weadababitzaboi 最简单的方法是什么?任何指
page1.php -(contents)- Jonathan Smith
page2.php -(contents)- Samantha Rafael
page3.php -(contents)- Robert Weadababitzaboi
最简单的方法是什么?任何指示都将不胜感激
成员表
id firstName lastName1乔纳森·史密斯
2萨曼莎·拉斐尔
3罗伯特·韦达巴比扎博
<?php
$db = new mysqli('localhost', 'root', '', 'test');
$sql = 'SELECT * FROM members;
$result = $db->query($sql);
echo displayResults($result);
$db->close();
function displayResults($result) {
//build it
while($row = $result->fetch_object()) {
$r .= '<div id="firstName"><img src="';
$r .= htmlspecialchars($row->firstName) ;
$r .= '"></div>';
$r .= '<div id="lastName">';
$r .= htmlspecialchars($row->lastName) ;
$r .= '</div>';
}
return $r;
}
您可以使用.htaccess(如果您使用的是Apache)并进行一些重写,这些重写可以在本页上看到:如果您想创建文件,这就是您需要的:
将成员ID作为GET参数传递到您的URL:
domain.example.org/member.php?id=42
准备一条语句以从DB检索该成员的详细信息:
$stmt = $db->prepare("SELECT * FROM members WHERE id = ?");
$stmt->bind_param('i', $_GET['id']);
$stmt->execute();
$result = $stmt->fetch();
并使用结果呈现页面
很可能你不需要做比这更复杂的事情。选择*FROM members后缺少一个引号为什么你希望每个页面都有一段代码并链接到它domain.com/mem/1 domain.com/mem/2等你希望特定页面的url是什么样的?你是说你想要一个页面将动态使用以获取每个用户页面,正如blamonet在下面所说的,您可以使用htaccess来修改urlsHow脚本是否知道要查找哪个id
?我知道您上面编写的第二个代码将获得特定id的信息,但它如何知道如何查找id=42
,即使它位于该页面上?@McLean25该id是作为链接到上一页面的URL的一部分传入的。在这个问题中,你可以看到询问者有一个索引页面,他在其中列出了DB表中的每一项。PHP是否识别url中的id?还是从正在传递的全局变量?他所要做的就是设置url的
正确吗?还有,$this
从哪里来?