簡體   English   中英

PHP基本數據庫鏈接幫助

[英]PHP basic database link help

我想從數據庫中獲取一個字段,例如。 “名稱”,然后將其用作鏈接以顯示我使用的數據庫本身中有關該名稱的更多信息-

while($re=mysql_fetch_array($result))
  {

echo"<a href=\"test.php?id=1\">{$re["name"]}'</a>'";

    }

但是我希望從數據庫中獲取的每個“名稱”條目都分配不同的ID,例如-Adam ID = 1 chris id = 2,以便在下一頁中我可以獲取該ID並相應地顯示內容。 請幫忙。

while ($row = mysql_fetch_assoc($result)) {
  echo "<a href=\"test.php?id={$row['id']}\">".htmlspecialchars($row['name'])."</a>\n";
}

假設數據庫中有一個id列,您要做的就是將該字段包括在SELECT查詢的結果中,並將其與現有代碼一起回顯。

您的數據庫中應該有一個自動遞增的主鍵,您將在下一頁的SELECT查詢中使用它,而您所需要做的就是使用它作為id

如果您沒有數字主鍵,請添加一個。 如果由於某種原因不能使用,請使用name字段作為id然后選擇該name

一些注意事項:

  • 確保使用htmlspecialchars()name字段進行轉義,以確保不會用用戶輸入破壞輸出。
  • 使用mysql_fetch_assoc()而不是mysql_fetch_array() -99%的時間這樣做是正確的。
  • 您在結束處加上了單引號</a> -在以上示例中,我將其刪除了。

僅使用名稱本身作為id,然后在下一頁將名稱用作數據庫查詢WHERE子句,會更容易。 由於您的數據庫未知整數ID,因此您無法輕松地將其匹配回名稱。

while($re=mysql_fetch_array($result))
{
  $name = $rs['name'];
  echo"<a href='test.php?name='" . urlencode($name) . "'>" . htmlentities($name) . "</a>";
}

在另一頁上...

$name = urldecode($_GET['name']);
$name = mysql_real_escape_string($name);
$result = mysql_query("SELECT * FROM table WHERE name='$name');

當然,這假定您的名字是唯一的。

編輯當前示例以保持這樣的計數:

$id = 0;

while($re=mysql_fetch_array($result)) {
     $id++;
     echo"<a href=\"test.php?id={$id}\">{$re["name"]}'</a>'";
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM