我今天開始使用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