我是新來這個論壇,並與我的MySQL/PHP網站有一個困境。現在我創建了一個將SQL查詢傳遞給它並執行它的函數。我沒有考慮到的事實是,我的SQL查詢被傳遞給函數顯示在所有瀏覽器的「查看源代碼」中;這是嚴重的安全問題,因爲黑客可以看到查詢。下面是函數的一個片段:如何隱藏來自Web瀏覽器的SQL查詢(PHP)
// connect to MySQL
$connection = mysql_connect($host,$username,$password) or die("Couldn't connect to MySQL". mysql_error());
// selects the database
$db = @mysql_select_db($db_name,$connection) or die("Couldn't select database");
function statement ($query)
{
global $connection, $db;
$sql = $query;
$results = mysql_query($sql, $connection) or die(mysql_error());
return $results;
}
下面是它怎麼叫:
$cat_results = statement("select * from $category");
有沒有一種方法來隱藏使用我具備的功能從瀏覽器傳遞查詢?如果沒有更好的方法來提供這個功能的建議?
真的很感謝這個!
安德烈
提供的代碼中沒有任何內容會向瀏覽器輸出任何查詢。你能提供更多的細節/代碼嗎? – lonesomeday 2010-10-30 22:23:33
當然,我可以告訴你什麼是輸出到瀏覽器「查看源」。原諒格式!
@Andre看起來像你的代碼中的錯誤。短標籤可能會被禁用,或者您可能會使用混合的html/php標籤做一些奇怪的事情。我個人只使用php的打印或模板系統。混合的HTML和PHP讓我嘔吐。 (沒有笑話) – rook 2010-11-01 21:35:21