给出未执行$end的PHP脚本

给出未执行$end的PHP脚本,php,html,login,dreamweaver,Php,Html,Login,Dreamweaver,我的登录脚本中出现了一个奇怪的错误。但通过研究,我无法确定问题所在。我想知道是否有人能帮我谢谢。这是错误消息 分析错误:语法错误,第43行出现意外的$end 代码: <?php session_start(); if(!isset($_SESSION["user_id"])){ header("location:../../login.html"); } ?> <?php $username = $_POST['txt_us

我的登录脚本中出现了一个奇怪的错误。但通过研究,我无法确定问题所在。我想知道是否有人能帮我谢谢。这是错误消息

分析错误:语法错误,第43行出现意外的$end

代码

<?php
    session_start();

    if(!isset($_SESSION["user_id"])){
        header("location:../../login.html");
    }


?>
<?php
    $username = $_POST['txt_username'];
    $password = $_POST['txt_password'];
    if ($username&&$password){

        $connect = mysql_connect("server", "username", "password") or die("No Server Found");

        mysql_select_db("databse") or die("No Connection");

        $query = mysql_query("SELECT * FROM account WHERE username='$username'");
        $numrows = mysql_num_rows($query); 

        if($numrows !=0){
            while ($rows = mysql_fetch_assoc($query)){

                $dbusername = $row['username'];
                $dbpassword = $row['password'];
            }
            if ($username == $dbusername && $password == dbpassword) {
                echo "Login Successful. <a href='homepage.html'>Click Here to go to the home page</a>";
                $_SESSION['username'] = $dbusername;
            } elseif ($username == '' || $password == '') {

                die("Please enter a username and password");

            } elseif (empty($dbusername)) {

                die("This account does not exsist");

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

?>


要关闭此if语句,最后一行需要一个右大括号:

if ($username&&$password){
一个像样的IDE应该会注意到这一点


dbpassword第28行缺少
$
,需要清理
$username

最后一行需要一个右括号,以关闭此if语句:

if ($username&&$password){
一个像样的IDE应该会注意到这一点


dbpassword第28行缺少
$
,需要清理
$username

您没有关闭其中一条if语句

if ($username&&$password){  

您没有关闭其中一个if语句

if ($username&&$password){  

您缺少最上面的if条件的结束右大括号。您的代码应该如下所示:

<?php
    session_start();

    if(!isset($_SESSION["user_id"])){
        header("location:../../login.html");
    }


?>
<?php
    $username = $_POST['txt_username'];
    $password = $_POST['txt_password'];
if ($username&&$password){

    $connect = mysql_connect("server", "username", "password") or die("No Server Found");

    mysql_select_db("databse") or die("No Connection");

    $query = mysql_query("SELECT * FROM account WHERE username='$username'");
    $numrows = mysql_num_rows($query); 

    if($numrows !=0){
        while ($rows = mysql_fetch_assoc($query)){

            $dbusername = $row['username'];
            $dbpassword = $row['password'];
        }
        if ($username == $dbusername && $password == dbpassword) {
        echo "Login Successful. <a href='homepage.html'>Click Here to go to the home page</a>";
        $_SESSION['username'] = $dbusername;
             } elseif ($username == '' || $password == '') {

             die("Please enter a username and password");

             } elseif (empty($dbusername)) {

               die("This account does not exsist");

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

?>


您缺少最上面的if条件的结束右大括号。您的代码应该如下所示:

<?php
    session_start();

    if(!isset($_SESSION["user_id"])){
        header("location:../../login.html");
    }


?>
<?php
    $username = $_POST['txt_username'];
    $password = $_POST['txt_password'];
if ($username&&$password){

    $connect = mysql_connect("server", "username", "password") or die("No Server Found");

    mysql_select_db("databse") or die("No Connection");

    $query = mysql_query("SELECT * FROM account WHERE username='$username'");
    $numrows = mysql_num_rows($query); 

    if($numrows !=0){
        while ($rows = mysql_fetch_assoc($query)){

            $dbusername = $row['username'];
            $dbpassword = $row['password'];
        }
        if ($username == $dbusername && $password == dbpassword) {
        echo "Login Successful. <a href='homepage.html'>Click Here to go to the home page</a>";
        $_SESSION['username'] = $dbusername;
             } elseif ($username == '' || $password == '') {

             die("Please enter a username and password");

             } elseif (empty($dbusername)) {

               die("This account does not exsist");

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

?>


你检查过你的花括号了吗?学会正确缩进你的代码,这会让问题变得很明显。我检查过我的括号,很抱歉当我粘贴它时缩进变得异常“当我粘贴它时,缩进变得异常”——这可能是因为你的代码混合了空格和制表符进行缩进。你应该试着坚持其中一个;不要混用它们,因为当您将代码加载到另一个编辑器中时(如本文所示),会造成可怕的混乱。有一些代码整理工具可以帮助您解决这个问题。此外,大多数像样的IDE(甚至是好的文本编辑器)都会向您显示缺少括号的位置和其他语法错误。你应该使用一个好的代码编辑器;有很多免费的,所以如果你没有,那么你会无缘无故地让自己的生活更艰难。其他:请注意,
mysql\u xxx()
函数已被弃用,应该避免使用。强烈建议改为使用PDO库。您是否检查了花括号?学会正确缩进代码,这会使这些问题变得明显。我检查了我的括号,很抱歉在粘贴时缩进太过怪异“当我粘贴时,缩进太过怪异”--这可能是因为您的代码混合了空格和制表符用于缩进。你应该试着坚持其中一个;不要混用它们,因为当您将代码加载到另一个编辑器中时(如本文所示),会造成可怕的混乱。有一些代码整理工具可以帮助您解决这个问题。此外,大多数像样的IDE(甚至是好的文本编辑器)都会向您显示缺少括号的位置和其他语法错误。你应该使用一个好的代码编辑器;有很多免费的,所以如果你没有,那么你会无缘无故地让自己的生活更艰难。其他:请注意,
mysql\u xxx()
函数已被弃用,应该避免使用。强烈建议改用PDO库。