我今天开始使用php和mysql。基本上,我所拥有的是一个空白页面,其中包含通过在数据库中查找ID填充的片段。所以,在我的主页我有一个看起来像这样的网址:php和mysql,最佳实践
<a href="content/display.php?id=id1">
然后在我的我Display.php的有这样的:
<?php
include '../includes/header.php';
$id = $_GET['id'];
$mysqli = new mysqli('localhost','username','password','dbname');
if($result = $mysqli->query("SELECT * FROM portfolio WHERE id='".$id."'"))
{
while($row = $result->fetch_object())
{
$head = $row->head;
$img1 = $row->img1;
$img2 = $row->img2;
$img_url = $row->imgurl;
$img_thumb = $row->imgthumb;
$vid = $row->vid;
$swf = $row->swf;
$url = $row->url;
$url_text = $row->urltext;
$text = $row->text;
}
}
else echo $mysqli->error;
?>
这是在稀疏表并非所有这些领域的将有信息(很多可能为空)。他们基本上包含文件名,然后在HTML我有一些代码,看起来像这样:
if(isset($img1))
{
echo '<img src="images/'.$img1.'" />';
}
几个问题,
- 这是做到这一点的最好方法是什么?
- 每当我访问display.php,我重新打开数据库连接的权利?这不可能是好的...
- 我选择将文件的名称放在数据库中,而不是整个路径名,甚至是实际的文件本身,因此,如果我更改文件的名称I可以进入数据库并为我想更改的文件进行更新。如果我改变路径,我可以在html中更改一次。这是最好的主意吗?
谢谢!
(重新)打开数据库连接是常见的做法,它应该没有多大关系。我想知道为什么你想要另一个变量中的对象的每个属性? – Wrikken 2010-07-29 16:50:48
我想所以我没有包裹整个网站在while循环...我想我可以做到这一点,虽然 – JPC 2010-07-29 16:54:21