因此,我只想从具有用户名的表中获取数据,该用户名与登录的用户名相同。这样的东西,但是不起作用。
$result_events = "SELECT * FROM task WHERE $_SESSION['username'] = $username;";
错误:
解析错误:语法错误,意外的''(T_ENCAPSED_AND_WHITESPACE), 期待'-'或标识符(T_STRING)或变量(T_VARIABLE)或 号码(T_NUM_STRING) /storage/ssd1/202/9375202/public_html/calendario.php,第9行
答案 0 :(得分:1)
您需要更改此行
$result_events = "SELECT * FROM task WHERE $_SESSION['username'] = $username;";
收件人
$tempUserName=$_SESSION['username'];
$result_events = "SELECT * FROM task WHERE username = '$tempUserName'";
我想在您的代码中首先强调两点,因为您没有正确地使用where子句,因为根据您的代码,$ _ SESSION ['username']必须是列名
第二件事是,通常我们将用户名以字符串(即varchar格式)存储在DBMS中,因此,当我们在where子句中使用用户名时,我们需要确保它是我们要比较的字符串。缺少用户名周围的单引号