创建注册表单

时间:2013-11-28 08:11:22

标签: php mysql registration

我在第20行遇到错误我试过mysqli

Parse error: syntax error, unexpected 'mysql_query' (T_STRING) in C:\Users\User\l\htdocs\register.php on line 20

    <html>
<body>
<?php
include("connect.php");

if(isset($_POST['register']))
$username= strip_tags(trim(mysql_real_ecape_string($_POST['username'])));
$password= strip_tags(trim(mysql_real_ecape_string($_POST['password'])));

    if(!username || !$password){
    echo "One of the fields are empty";
    }else{
    $find_multiple=" SELECT Username FROM register WHERE Username='$username' ";
    $run_multiple = mysql_query($find_multiple) or die (mysql_error());
    $num_multiple= mysql_num_rows($run_multiple);

    if($num_multiple < 1){
    $password= md5($password)

    mysql_query("INSERT INTO register SET Username='$Username', Password='$Pasword' ") or die(mysql_error());
    echo "You have succesfully registered!":

    }else{
    echo "That username has already beed used" ;

    }

?>  


<h1>Register</h1>
<form action='' method='post'>
username: <input type='text' name'username'/></br>
Password: <input type='password' name'password'/></br>
<input type='submit' value='Register'name='register'/>
</form> 

注意:未定义的索引:第12行的C:\ Users \ User \ l \ htdocs \ register.php中的用户名

注意:第13行的C:\ Users \ User \ l \ htdocs \ register.php中的未定义索引:密码

<?php
    $connect=mysql_connect("localhost","root","");
    $db_selected = mysql_select_db("users", $connect); 


    if(isset($_POST['register'])){


    $username= $_POST['username'];
    $password= $_POST['password'];

        if(!$username || !$password){
        echo "One of the fields are empty";
        }else{
        $find_multiple=" SELECT username FROM resgistration WHERE username='$username' ";
        $run_multiple = mysql_query($find_multiple) or die (mysql_error());
        $num_multiple= mysql_num_rows($run_multiple);

        if($num_multiple < 1){
        $password= md5($password);

        mysql_query( "INSERT INTO `resgistration` (`username`, `password`) VALUES ('".$username."', '".$password."')" ) or die(mysql_error());
        echo "You have succesfully registered!";

        }else{
            echo "That username has already beed used" ;
    } 

         } # endelse: empty password or username
    } # endif: registered
    ?>  
    <head>
    <h1>Register</h1>
    <form action='' method='post'>
    Username: <input type='text' name='username'/></br>
    password: <input type='password' name='password'/></br>
    <input type='submit' value='Register'name='register'/>

    </form> 
    </body>
    </html>

6 个答案:

答案 0 :(得分:0)

失踪;在这一行:

$password= md5($password)

答案 1 :(得分:0)

在前一行放一个分号。 PHP使用;作为语句终止符,它们不是可选的。

答案 2 :(得分:0)

这一行后你需要一个分号:

$password= md5($password)

你之后还有一个冒号(应该是分号):

 echo "You have succesfully registered!":

您应该阅读how to debug PHP errors by yourself,以便开始修复这样的简单错误。

答案 3 :(得分:0)

你在第19行错过了分号。

也INSERT INTO [TABLE] SET不是标准的。 试试这种格式:

  mysql_query("INSERT INTO `register` (`username`, `password`) VALUES 
               ('$username', '$password')");

答案 4 :(得分:0)

试试这个:

<?php
    $connect=mysql_connect("localhost","root","");
    $db_selected = mysql_select_db("users", $connect); 

    if( isset( $_POST['hide'] ) && $_POST['hide'] == 1 ) {

        $username= $_POST['username'];
        $password= $_POST['password'];

        if( !$username || !$password ) {
            echo "One of the fields are empty";
        } else {
            $find_multiple = "SELECT username FROM resgistration WHERE username = '".$username."'";
            $run_multiple = mysql_query( $find_multiple ) or die ( mysql_error() );

            if( mysql_num_rows( $run_multiple ) == 0 ) {
                $password= md5($password);

                mysql_query( "INSERT INTO `resgistration` (`username`, `password`) VALUES ('".$username."', '".$password."')" ) or die(mysql_error());
                echo "You have succesfully registered!";
            } else {
                echo "That username has already beed used" ;
            } 

        } # endelse: empty password or username
    } # endif: registered
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html401/loose.dtd">
<html>
    <head>
        <tilte>Registration</title>
    </head>

    <body>
        <h1>Register</h1>
        <form action='<?php echo $_SERVER['PHP_SELF']; ?>' method='post'>
            Username: <input type='text' name='username'/></br>
            password: <input type='password' name='password'/></br>
            <input type='hidden' name='hide' value='1' />
            <input type='submit' value='Register' name='register'/>
        </form> 
    </body>
</html>

答案 5 :(得分:0)

目前:

mysql_query("INSERT INTO register SET Username='$Username', Password='$Pasword' ") or die(mysql_error());

你错过了$Pasword

的s

此外,您使用大写字母,当您申报时,您不使用大写字母......

所以使用:

mysql_query("INSERT INTO register SET Username='$username', Password='$password' ") or die(mysql_error());

您还有:

 $password= md5($password)

应该是:

 $password= md5($password);

这样可以解决您的错误:

解析错误:语法错误,意外的'mysql_query'

Rohit也是对的:

1)替换

if(!username || !$password)

使用

if(!$username || !$password)
顺便说一下。不要使用mysql ...

修改

现在我注意到了,你没有关闭

else{

在:

if(!username || !$password){
    echo "One of the fields are empty";
    }else{

AND phpcoder是关于:

echo "You have succesfully registered!":

应该是

echo "You have succesfully registered!";

我自己没有注意到。

第二次编辑:

这是他以前遇到的问题的答案。他用现在的错误更新了这个问题。