【发布时间】:2017-04-10 11:53:32
【问题描述】:
我正在尝试根据会话用户名显示表格,但出现以下错误。当它是id 时它正在工作,但当它是username 它不是
SELECT tb_list.* FROM tb_list
WHERE myusername = ".Session::get('username')."
Connection.php 第 662 行中的 QueryException:SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 2 行的 'ORDER BY id asc LIMIT 0 , 10' 附近使用正确的语法(SQL:SELECT tb_list。 FROM tb_list WHERE username = ORDER BY id asc LIMIT 0 , 10 )*
提前致谢
假设会话所有者的用户名是 john
Table with NO session
WHERE tb_list.task_id IS NOT NULL
+---------+----------+-------------+-----------------+
| task_id | username | some_data | some_time |
+---------+----------+-------------+-----------------+
| 1 | john | some data | 2015-02-29 1 pm |
| 2 | jack | some data | 2015-02-29 2 pm |
| 3 | john | some data | 2015-02-29 3 pm |
| 4 | bill | some data | 2015-02-29 4 pm |
+---------+----------+-------------+-----------------+
Table with john's session
WHERE username=".Session::get('username')."
+---------+----------+-------------+-----------------+
| task_id | username | some_data | some_time |
+---------+----------+-------------+-----------------+
| 1 | john | some data | 2015-02-29 1 pm |
| 3 | john | some data | 2015-02-29 3 pm |
+---------+----------+-------------+-----------------+
【问题讨论】:
-
你为什么要从表中获取 * 并且你是在尝试登录用户?如果是,您不需要只查询 dd(Auth::user()) 并获取登录用户的所有信息。
-
显示包含与会话所有者相同用户名的行
-
那么您不是在寻找会话所有者的行吗?
-
myusername 是从 users 表中获取的选择框字段。所以如果任何一行包含与会话所有者相同的用户名,就会显示出来
-
你能详细解释一下你想做什么吗?