[英]How to safely use $_GET['id'] to get details from database by selecting html table row
因此,我有此工作代碼可單擊鏈接,以在輸入文本框中的另一頁上顯示數據庫的一行的詳細信息。
<?php
foreach ($allCentrifuge as $list) {
$id = $list['id'];
?>
<tr>
<td><?php echo $list['experiment'] ?></td>
<td><?php echo $list['project_name'] ?></td>
<td><?php echo $list['project_date'] ?></td>
<td><a href="../Views/user_centrifuge.php?id=<?php echo $list['id']?>">Details</a></td>
</tr>
<?php
}
?>
並且此函數獲取那些詳細信息:
public function fetchCentrifuge()
{
$uid = $_GET['id'];
try {
$stmt = $this->dbconn->prepare("SELECT * FROM centrifuge WHERE id = ?");
$stmt->execute(array($uid));
return $stmt->fetchAll();
}
因此,從我讀過的所有主題來看,這顯然對SQL注入很危險。 但是,如何將這些代碼與准備好的語句一起使用? 我似乎無法使其與id占位符一起使用。
看起來不錯。 您還可以將輸入var強制轉換為INT。
(int)$_GET['id'] or intval($_GET['id'])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.