警告我不是一名PHP程序員。嘗試從URL中提取ID字段時返回錯誤
我已經繼承了PHP日記腳本,同時試圖幫助客戶恢復舊網站。腳本不能按預期運行。看來,問題在於與$ ID沒有被從鏈路如http://example.com/diary.php?id=51
這裏提取的方式是應該處理這個腳本:
<?php
// instert automatic date structure for 2004 or 2005
include 'admin24/config.inc.php';
if (isset($_GET['id'])){
$query = "SELECT * FROM `diary` WHERE id=$id";
$result = mysql_query($query)
or die ("problem resolving information....contact php_admin");
$row = mysql_fetch_array($result);
extract($row);
$date = date("j F Y", (strtotime($date)));
?>
如果我代替$id
像一個整數所以:
$query = "SELECT * FROM `diary` WHERE id=51";
沒有問題,查詢從數據庫中檢索得很好。
有誰能告訴我爲什麼這不起作用?由於它是,它總是返回:
「的問題解決信息....接觸php_admin」
在此先感謝。
你不應該直接在mysql查詢中使用$ id,至少要用mysql_real_escape_string($ id)來防止sql注入, – cppanda 2012-07-08 00:03:26