This question is unlikely to help any future visitors; it is only relevant to a small geographic area, a specific moment in time, or an extraordinarily narrow situation that is not generally applicable to the worldwide audience of the internet. For help making this question more broadly applicable,
visit the help center。
7年前关闭。
我看不到错误的出处,并且已经检查了分号,也看不到任何遗漏。我是php的新手,将不胜感激。实际错误为:
Parse error: syntax error, unexpected T_VARIABLE in
/home/sam/public_html/query.php on line 54
以下是第54行:
$sql = "UPDATE Users SET Datecreated='".$date."' WHERE Username='".$usernamec."'";
这是完整的代码:
<?php session_start();
include 'connect.php';
echo "Hello World!";
echo '$_SESSION[page]';
$_SESSION['loggedon']=12345;
$username=$_POST['username'];
$password=$_POST['password'];
$sql = "SELECT * FROM 'Users' WHERE 'Username'='".$username."'";
$result = @mysql_query( $sql );
while ($row= @mysql_fetch_assoc($result))
{
if (($username=$row['Username'])&&($password=$row['Password']))
{
$_SESSION['loggedon']=$row['AccessLevel'];
$_SESSION['userid']=$row['UserID'];}}
if ($_SESSION['loggedon']==12345)
{
$sql = "SELECT * FROM 'RedundantUsers' WHERE 'Username'='".$username."'";
$result = @mysql_query( $sql );
while ($row= @mysql_fetch_assoc($result))
{
$_SESSION['loggedon']=$row['AccessLevel'];
$_SESSION['userid']=$row['UserID'];
$userid =$row['UserID'];
$forename =$row['Forename'];
$surname =$row['Surname'];
$email =$row['Email'];
$usernamec =$row['Username'];
$access =$row['AccessLevel'];
$sql = "INSERT INTO 'Users' ('UserID', 'Forename', 'Surname', 'Email', 'Username', 'AccessLevel')
VALUES ('$userid', '$forename', '$surname', '$email', '$usernamec', '$access')";
if (!@mysql_query($sql))
{
die('Error: ' . mysql_error());
}
$sql = "DELETE * FROM 'RedundantUsers' WHERE 'Username'='".$usernamec."'"; }}
date_default_timezone_set('UTC');
$date = date("Y-m-d H:i:s");
$sql = "UPDATE 'Users' SET 'Datecreated'='".$date."' WHERE 'Username'='".$usernamec."'";
if (!@mysql_query($sql))
{
die('Error: ' . mysql_error());
}
echo $_SESSION['loggedon'];
header('Location: /'.$_SESSION['page']);
?>
如果它对您有帮助,请访问connect.php:
<?php
$dbhost = '*****';
$dbuser = '*****';
$dbpass = '*****';
$conn = @mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to local MySQL')
$dbname = '******';
@mysql_select_db($dbname);
?>
在第54行(发生错误的地方)
更改
echo $_SESSION[loggedon];
至
echo $_SESSION['loggedon'];
这意味着您忘记了在 session 值中包含'
。除非值是已定义的常数,否则应始终包含单引号。
更新
<?php session_start();
include 'connect.php';
echo "Hello World!";
echo $_SESSION['page'];
$_SESSION['loggedon']=12345;
$username=$_POST['username'];
$password=$_POST['password'];
$sql = "SELECT * FROM Users WHERE Username='".$username."'";
$result = mysql_query($sql) or die(mysql_error());
while ($row= mysql_fetch_array($result))
{
if (($username=$row['Username'])&&($password=$row['Password']))
{
$_SESSION['loggedon']=$row['AccessLevel'];
$_SESSION['userid']=$row['UserID'];}}
if ($_SESSION['loggedon']==12345)
{
$sql = "SELECT * FROM RedundantUsers WHERE Username='".$username."'";
$result = mysql_query($sql);
while ($row= mysql_fetch_array($result))
{
$_SESSION['loggedon']=$row['AccessLevel'];
$_SESSION['userid']=$row['UserID'];
$userid =$row['UserID'];
$forename =$row['Forename'];
$surname =$row['Surname'];
$email =$row['Email'];
$usernamec =$row['Username'];
$access =$row['AccessLevel'];
$sql = "INSERT INTO Users (UserID, Forename, Surname, Email, Username, AccessLevel)
VALUES ('$userid', '$forename', '$surname', '$email', '$usernamec', '$access')";
if (!mysql_query($sql))
{
die('Error: ' . mysql_error());
}
$sql = "DELETE * FROM RedundantUsers WHERE Username='".$usernamec."'"; }}
date_default_timezone_set('UTC');
$date = date("Y-m-d H:i:s");
global $usernamec;
$sql = "UPDATE Users SET Datecreated='".$date."' WHERE Username='".$usernamec."'";
if (!@mysql_query($sql))
{
die('Error: ' . mysql_error());
}
echo $_SESSION[loggedon];
header('Location: /'.$_SESSION[page]);
?>