Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我的在线信息系统_Php - Fatal编程技术网

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号。您没有提供足够的代码让我使用您的实际变量。