【问题标题】:PHP POST just not working for some reasonPHP POST 由于某种原因无法正常工作
【发布时间】:2016-12-06 11:11:23
【问题描述】:

尝试制作一个简单的登录页面,表单如下:

    <form action="admin/login" method="post" enctype="multipart/form-data">
        <div class="input-container">
            <span class="label">Username:</span>
            <input class="login-input" type="text" name="user" required>

            <span class="label">Password:</span>
            <input class="login-input" type="password" name="pass" required>
        </div>

        <input id="login-button" type="submit" value="Log In">
    </form>

这是登录页面:

<?php
    ini_set('display_errors', 1);
    ini_set('display_startup_errors', 1);
    error_reporting(E_ALL);

    echo $_POST['user'];
?>

我刚把这个打印出来:

Notice: Undefined index: user in /var/www/html/admin/login.php on line 6

我不知道发生了什么,我已经尝试了所有方法。

【问题讨论】:

  • 表单操作中缺少文件扩展名
  • action="admin/login.php" ???
  • 我已将 .htaccess 文件设置为删除扩展名。它把我带到页面,因为它显示了那个错误? login.php 的代码在我上面的问题中。
  • 那么您的 .htaccess 也可能是原因。禁用 .htaccess 并实施更改(添加“.php”)。如果它有效,那就是你的 .htaccess
  • 使用 if(isset($_POST)

标签: php html forms post input


【解决方案1】:

想通了,你们是对的,这是 .htaccess 文件的问题。

我只需要在动作路径后添加一个斜线:

action="admin/login/"

就是这样!

【讨论】:

  • 如果您有正确的 .htaccess 规则,这无关紧要 ;)
【解决方案2】:

将操作从 action="admin/login" 更改为 action="admin/login.php" 然后提交。 您直接从 URL 中点击login.php,这就是它显示未定义用户的原因,因为用户被定义为发布变量

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-12-09
    • 2013-12-28
    • 1970-01-01
    • 1970-01-01
    • 2017-04-06
    • 2012-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多