给出未执行$end的PHP脚本
我的登录脚本中出现了一个奇怪的错误。但通过研究,我无法确定问题所在。我想知道是否有人能帮我谢谢。这是错误消息 分析错误:语法错误,第43行出现意外的$end 代码:给出未执行$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
<?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库。