繁体   English   中英

为什么会出现解析错误?

[英]Why Am I Getting A Parse Error?

我有一个带有简单表单的HTML页面,该页面将数据提交到login.php。 在login.php内部,我有此代码。 当我尝试执行此脚本时,出现以下错误:

解析错误:语法错误,/ home / login.php中第13行出现意外的T_VARIABLE

<?php

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

if ($username&&$password) {

    $connect = mysql_connect("localhost", "admin", "1455m") or die("Couldn't Connect");
    mysql_select_db("lr") or die("Couldn't find database!");

    $query = mysql_query("SELECT * FROM users WHERE username='$username'")

    $numrows = mysql_num_rows($query);

    if ($numrows!=0) {

        while ($row = mysql_fetch_assoc($query)) {

            $dbusername = $row['username'];
            $dbpassword = $row['password'];
        }

        if ($username==$dbusername&&$password==$dbpassword) {

            echo 'You are In!';

        } else {

            echo 'Incorrect Password!';
        }

    } else {
        die("That user doesn't exist.");
    }

} else {
    die("Please enter a username & password.");
}

?>

您缺少分号:

$query = mysql_query("SELECT * FROM users WHERE username='$username'") 
                                                                      ^
                                                                      Here

该错误告诉您第13行出现了意外情况; 在这种情况下为变量。 因此,通常最好检查一下它之前的代码,并检查它在语法上是否正确。

在这种情况下,您在第13行的行上缺少分号,因此在第11行中由于您的格式而已-仅在使用mysql_query()的地方! 尝试这个...

$connect = mysql_connect("localhost", "admin", "1455m") or die("Coudn't Connect");
mysql_select_db("lr") or die("Coudn't find database!");

$query = mysql_query("SELECT * FROM users WHERE username='$username'"); // here!

$numrows = mysql_num_rows($query);

您忘记在查询中添加连接:

$query = mysql_query("SELECT * FROM users WHERE username='$username'");

应该:

$result = mysql_query("SELECT * FROM users WHERE username='$username'", $connect);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM