簡體   English   中英

mysql_query(“ INSERT INTO…不起作用

[英]mysql_query("INSERT INTO… is not working

我正在嘗試創建注冊頁面。 該頁面已成功連接到phpMyAdmin數據庫,但是當我單擊注冊按鈕時它沒有回顯任何內容。

<html>
<head>
</head>

<body>

<?php
INCLUDE "connect.php";
INCLUDE "functions.php";
INCLUDE "titlebar.php";
?>

            <div id="loginform">    
            <h1>Register</h1>

            <form name="Register" action="register.php" method="post">
            <?php
            if(isset($POST["submit"])){
                    $username = $_POST["username"];
                    $password = md5 ($_POST["password"]);
                    if(empty($username) or empty($password)){
                            echo "<p>Fields Empty!</p>";
                    } else {
                            mysql_query("INSERT INTO login VALUES('',$username','$password','2','')");
                            echo "<p>Successfully Registered!</p>";
                    }
            }
            ?>
                <p>     
                    <label for="username">Username: </label>
                    <input type="text" name="username" id="username"/></p><p>

                    <label for="password">Password: </label>
                    <input type="password" name="password" id="password"/></p><p>
                    <input type="submit" name="submit" value="Register" />
                </p>
            </form>
            </div>
</body>

問題出在post方法上。 使用$ _POST而不是$ POST

您有mysql錯誤

不: $username'

但是'$username'

下次使用mysql_error()顯示mysql錯誤。

一開始,我不確定isset($ _ POST ['submit']應該返回什么,但是正如您已經在注釋中提到的那樣,您錯過了單引號。

另外,我會使用:

$password = password_hash($_POST['password'], 

md5已過時,因此不安全。 如果您編寫登錄腳本,則可以使用password_verify(plainPW,hashPW)

您還需要指定一個數據庫並登錄。 我建議看一下W3 Schools的例子,它們非常深入,並且有很好的例子。 W3學校mysqli頁面

還要在腳本的末尾編寫一個die(),不要放棄關閉連接。

暫無
暫無

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

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