0

この URL で「名前」の GET var を取得する必要があります。

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 は null になり、$name は正しい値を保持します。したがって、本当の問題は、なぜ mysql_real_escape_string() が値を削除するのかということです。

4

1 に答える 1

1

代わりに次のコードを使用してください。

$request = $this->getRequest();
$name = $request->query->get('n');

http://symfony.com/doc/current/book/controller.html#the-request-object

于 2012-12-15T01:22:51.367 に答える