簡體   English   中英

PHP 不發布我的表單值

[英]PHP Doesn't post my form values

我已經撓了一個小時了,不明白為什么 php 不發布我的表單值。

代碼

        <!-- Login -->
        <div class="login__block toggled" id="l-login">
            <div class="login__block__header">
                <i class="zmdi zmdi-account-circle"></i>
                Hi there! Please Sign in

                <div class="actions login__block__actions">
                    <div class="dropdown">
                        <a href="#" data-toggle="dropdown"><i class="zmdi zmdi-more-vert"></i></a>

                        <ul class="dropdown-menu pull-right">
                            <li><a data-block="#l-register" href="#">Create an account</a></li>
                            <li><a data-block="#l-forget-password" href="#">Forgot password?</a></li>
                        </ul>
                    </div>
                </div>
            </div>

            <div class="login__block__body">
                <div class="form-group form-group--float form-group--centered form-group--centered">
                    <input type="text" class="form-control" name="email">
                    <label>Email Address</label>
                    <i class="form-group__bar"></i>
                </div>

                <div class="form-group form-group--float form-group--centered form-group--centered">
                    <input type="password" class="form-control" name="password">
                    <label>Password</label>
                    <i class="form-group__bar"></i>
                </div>

                <button type="submit" class="btn btn--light btn--icon m-t-15"><i class="zmdi zmdi-long-arrow-right"></i></button>
            </div>
            <?php
            if(isset($_POST['login'])) {
                if(isset($_POST['email']) && isset($_POST['password']) &&
                is_string($_POST['email']) && is_string($_POST['password']) &&
                !empty($_POST['email']) && !empty($_POST['password'])) {
                    $email = stripslashes(strip_tags($_POST['email']));
                    $password = md5($_POST['password']);

                    $stmt = $pdo->prepare('SELECT * FROM users WHERE UserEmail = :UserEmail');
                    $stmt->bindParam(':UserEmail', $email);
                    $stmt->execute();

                    if($stmt->rowCount() > 0) {
                        $stmt = $pdo->prepare('SELECT * FROM users WHERE UserEmail = :UserEmail AND UserPassword = :UserPassword');
                        $stmt->execute(array(':UserEmail' => $email, ':UserPassword' => $password));

                        if($stmt->rowCount() > 0) {
                            $row = $stmt->fetch();
                            $UserLevel = $row['UserLevel'];

                            if($UserLevel == 'banned') {
                                $display->ReturnError('Your account has been suspended.');
                                return false;
                            }
                            $UserID = $row['UserID'];
                            $time = time();
                            $IPAddress = $_SERVER['REMOTE_ADDR'];

                            $_SESSION['auth'] = $UserID;

                            $stmt = $pdo->prepare('INSERT INTO logs (LogUserID, LogDate, LogIPAddress) VALUES (:LogUserID, :LogDate, :LogIPAddress)');
                            $stmt->execute(array(':LogUserID' => $UserID, ':LogDate' => $time, ':LogIPAddress' => $IPAddress));

                            $display->ReturnSuccess('You was successfully logged in.');
                            $settings->forceRedirect('index.php', 2);
                        } else {
                            $display->ReturnError('Invalid user credentials.');
                        }
                    } else {
                        $display->ReturnError('User with these credentials does not exists.');
                    }
                }
            }
        ?>
        </div>

請注意,我對 PHP 非常陌生,如果您能幫助我,這對我來說意味着整個世界! 謝謝你。

提交按鈕僅在表單標簽內時才有效。 你的代碼沒有任何表單標簽試試這個

  <form action="" >
        <!-- Login -->
        <!--your code here -->
  </form>

添加這樣的表單屬性

<div class="login__block__body"> 
  <form action="url which will process form" method="POST">
                <div class="form-group form-group--float form-group--centered form-group--centered">
                    <input type="text" class="form-control" name="email">
                    <label>Email Address</label>
                    <i class="form-group__bar"></i>
                </div>

                <div class="form-group form-group--float form-group--centered form-group--centered">
                    <input type="password" class="form-control" name="password">
                    <label>Password</label>
                    <i class="form-group__bar"></i>
                </div>

                <button type="submit" class="btn btn--light btn--icon m-t-15"><i class="zmdi zmdi-long-arrow-right"></i></button>
     </form>

            </div>

所有<input>標簽都必須在<form>標簽內。

<form action="" method="post"> //Submits form to same page
<input/>
<input/>
<button type="submit" class="btn btn--light btn--icon m-t-15"><i class="zmdi zmdi-long-arrow-right"></i></button>
</form>

當您“提交”此表單時,它將 POST 表單中的所有輸入值,您可以從$_POST['name_of_input']變量中檢索這些值

我建議在 PHP 之前學習 HTML。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM