我下面有一个简单的MySQL表,我目前在这篇文章的底部用代码显示它的内容。
为了演示,我在这里只包含了3条记录,但实际上我有数百条记录,并且希望找到一些方法来动态生成数百个页面,其中每个页面显示来自数据库的不同行。
例如:
page1.php -(contents)- Jonathan Smith
page2.php -(contents)- Samantha Rafael
page3.php -(contents)- Robert Weadababitzaboi
最简单的方法是什么?如有任何指导,不胜感激。
成员表
id firstName lastName
1乔纳森·史密斯
2萨曼莎·拉斐尔
3 Robert Weadababitzaboi
<?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),并做一些重写,可以在这个页面上看到:http://wiki.dreamhost.com/More_.htaccess_mod_rewrite_examples
如果你想创建文件,这就是你需要的:http://php.net/manual/en/function.fopen.php
将成员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();
并使用结果呈现您的页面。
很可能你不需要做任何比这更复杂的事情。