2012-12-15 29 views
0

我需要獲得 「名」 GET VAR:Symfony2中,在生產空GET變量

www.mydomain.com/?n=me 

這是我如何得到它:

$request = Request::createFromGlobals(); 
$name = $request->query->get('n'); 

它工作在我的本地服務器,但在生產服務器上,$ name var是空的。什麼會造成這種情況?

編輯:

我在我的代碼,又看了看我看見沿途某處使用mysql_real_escape_string()函數。實際上,這是這樣完成的:

$request = Request::createFromGlobals(); 
$name = $request->query->get('n'); 
$safeName = mysql_real_escape_string($name); 

這導致$ safeName爲空,$ name保存正確的值。所以真正的問題是爲什麼mysql_real_escape_string()將刪除該值。

+0

所以,問題是你爲什麼要調用這個函數?你使用Doctrine來查詢你的數據庫嗎?如果是的話,你不需要清理'$ name'。 [鏈接](http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/security.html) – cheesemacfly

+0

我使用這個函數,因爲這是我以前一直這樣做的。是的,我正在使用Doctrine。 – BigJ

+0

當你使用'$ name = $ request-> query-> get('n','bob');'? '$ name'是否設置爲'bob'? –

回答