Internet Explorer中的Symfony2 POST变量参数为空

时间:2014-03-24 09:15:35

标签: php html forms internet-explorer symfony

我在Symfony2应用程序中为登录创建了一个自定义表单:

{% block body %}
    <div id="login">
        <div class="login_title">Authentication</div>
        {% if error %}
            <div class="alert alert-error">{{ error.message }}</div>
        {% endif %}
        <form action="{{ path('login_check') }}" method="post">
            <table id="login_form">
                <tbody>
                    <tr>
                        <th><label for="login_login">Login</label></th>
                        <td> <input type="text" id="username" name="_username" value="{{ last_username }}" required></td>
                    </tr>
                    <tr>
                        <th><label for="login_password">Password</label></th>
                        <td><input type="password" id="password" name="_password" required></td>
                    </tr>
                    <tr>
                        <td colspan="2">
                            <input type="submit" value="Connect" id="login_submit">
                        </td>
                    </tr>
                </tbody>
            </table>
        </form>
    </div>      
{% endblock %}

我不知道会发生什么,我已经花了将近8个小时试图解决这个问题。 它适用于本地WAMP服务器上的Internet Explorer,Chrome和Firefox。 它仅适用于Linux测试服务器上的Chrome和Firefox,IE不会发送帖子变量。

我在antoher笔记本电脑上尝试过它,结果相同。 我认为PHP独立于客户端的浏览器......

对此有何想法? 我使用这个Symfony函数获取参数:

$username = trim($request->get("_username", null, true));
$password = $request->get(("_password", null, true);

2 个答案:

答案 0 :(得分:0)

假设$requestParameterBag,为什么要标记你的get要做的事情&#34;深度&#34;分辨率(第三个参数)?

只有field[identifier]作为input的名称,才能获得深度分辨率。

您是否尝试删除第三个参数(true)?

另外,您是说一切都可以在其他浏览器中使用?

答案 1 :(得分:0)

我的问题解决了,我试图在我的应用程序上实现SSO。所以我在Linux机器上安装了mod_auth_vas。 我不知道为什么但是在安装mod_auth_vas之后我没有&#34; POST&#34;问题。

此致

Servietksy