Php 未执行Html表单操作字段

Php 未执行Html表单操作字段,php,html,Php,Html,此表单用于从用户处获取登录详细信息并提供 执行login.php文件的登录页面中的详细信息 <div id="log_btn"> <section id="form_before_launch"> <p style="font-family: Arial, Helvetica, sans-serif;">LogIn</p> <form action="login.php" id="form" method="POST" onsubmit="r

此表单用于从用户处获取登录详细信息并提供 执行login.php文件的登录页面中的详细信息

<div id="log_btn">
<section id="form_before_launch">
<p style="font-family: Arial, Helvetica, sans-serif;">LogIn</p>
<form action="login.php" id="form" method="POST" onsubmit="return false">
    <div>
        <div>
            **<!-- Fields of Login page -->**
            <input type="text" id="username" name="uname" placeholder="Username" required />
        </div>
        <div>
            <input type="password" id="password" name="pass" placeholder="password" required />
        </div>
        **<!-- Captcha is Displayed in id="ip" & users enters the captcha in id "op" on Submit login page is executed -->**
        <div>
            <input type="text" id="ip" name="ip" />
            <br>
            <input type="text" id="op" name="op" />
        </div>
        <br><br><br>
        <div id="btn">
            <input type="submit" id="submit" value="Log In" />
        </div>
</form>
</div>
如果需要查看测试表单,则login.php部分实际上是将输入结果发送到login.php

    <?php

$servername = "localhost";
$username   = "root";
$password   = "";
$dbname     = "Train";
$conn       = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
session_start();
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $ip_uid  = $_POST['uname'];
    $ip_pass = $_POST['pass'];
    $ip      = $_POST['ip'];
    $op      = $_POST['op'];
}
function input($data)
{
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    return $data;
}
$sql    = "SELECT user_name,pass FROM `Reg_User` WHERE user_name='$uid' AND pass='$pass'; ";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
    while ($row = mysqli_fetch_assoc($result)) {
        $user_name = $row["user_name"];
        $pass      = $row["pass"];
    }
}
if ($ip_uid == $user_name && $ip_pass == $pass) {
    $_COOKIE['$user_name'] = $user_name;
    echo " <script> alert('Successfully Logged IN');";
    header('Location: http://localhost/TrainProject/Landing_page.php');
} else {
    echo " <script> alert('Wrong Credentials Login failed');";
    header('Location: http://localhost/TrainProject/new_home.html');
}

?>
您正在明确取消表单提交:

onsubmit="return false"
如果要提交表单,请删除该表单。

更改为

<div id="log_btn">
    <section id="form_before_launch">
    <p style="font-family: Arial, Helvetica, sans-serif;">LogIn</p>
    <form action="login.php" id="form" method="POST">
        <div>
            <div>
                **<!-- Fields of Login page -->**
                <input type="text" id="username" name="uname" placeholder="Username" required />
            </div>
            <div>
                <input type="password" id="password" name="pass" placeholder="password" required />
            </div>
            **<!-- Captcha is Displayed in id="ip" & users enters the captcha in id "op" on Submit login page is executed -->**
            <div>
                <input type="text" id="ip" name="ip" />
                <br>
                <input type="text" id="op" name="op" />
            </div>
            <br><br><br>
            <div id="btn">
                <input type="submit" id="submit" value="Log In" />
            </div>
    </form>
    </div>

html中的问题有参数onsubmit=return false

我删除了onsubmit=return falsesame@TejasPatil:对我有用:你有可靠地证明问题的代码吗?@David可能是因为他们缺少php。上帝只知道他们是如何访问文件的。我在问题下发表了评论;没有什么好我想这个对我来说不太清楚。为什么OP要改成这个代码?一个好的答案总是会有一个解释,说明做了什么以及为什么这样做,不仅是为了OP,而且是为了未来的访客。表示了解的语句。即使是这样也不安全!永远不要存储纯文本密码!请使用PHP来处理密码安全性。如果您使用的PHP版本低于5.5,则可以使用密码\u散列。在散列之前,不需要对它们执行任何操作或使用任何其他清理机制。这样做会更改密码并导致不必要的额外编码。我们不要教/传播草率和危险的编码实践。如果你在没有准备好陈述的情况下发布了答案。另外,因为它看起来像是您编辑的代码。似乎是为你编辑的操作-不正确。检查我的答案更新它将解决你的问题为什么这个标记为php?它没有代码;那么它在哪里呢?你是如何访问它的呢?我现在已经添加了php代码。我认为login.php文件中有错误。html错误由@David answer$ip\u uid不是$uid,$ip\u pass不是$pass解决