Php 我的在线信息系统
我想创建一个消息传递系统,这是我的表:Php 我的在线信息系统,php,Php,我想创建一个消息传递系统,这是我的表: (customers) userid int 11 primary key auto increment, username varchar 255, password varchar 255 (messages) mid int 11 primary key auto increment, from_id index customer.userid, to_id index customer.userid, message text 我的问题是,如果
(customers) userid int 11 primary key auto increment, username varchar 255, password varchar 255
(messages) mid int 11 primary key auto increment, from_id index customer.userid, to_id index customer.userid, message text
我的问题是,如果我的会话userid
是11,如何显示发送到我的id的所有消息
什么是正确的代码使用
$stmt = $con->prepare("SELECT
message.*, customer.username AS from_id
FROM
message
INNER JOIN
customer
ON
customer.userid = message.from_id
");
$stmt->execute();
$rows = $stmt->fetchAll();
您描述的查询中需要的是一个“Where”子句。在末尾添加“where userid=11”将完全满足您在上述问题中提出的要求 如果userid是一个参数,那么您应该查看这个PAQ来了解如何做到这一点,因为这是一个不同的问题
您可能希望将其标记为SQL,因为问题实际上是关于查询的。看起来您已正确完成联接,但尚未添加筛选器。您可能需要做的是在末尾添加customer.userid=11的位置。例如,另一个userid如何使用Anotte userid登录如何显示发送给该userid的所有消息快速而肮脏的方法是像您在那里做的那样以字符串形式构造查询,更好的方法是使用带有参数的预处理语句来避免SQL注入漏洞。你可以在字符串的末尾加上。“where message.userid=”。"11"; 用你的身份证替换11号。您没有提供足够的代码让我使用您的实际变量。