php - 如何使用连接表中的选定项目?

标签 php mysql

如何将以下语句的 s.Usernamer.Username 存储在变量中?

$stmt = $this->db->prepare('SELECT 
                                  s.Username AS Username1, 
                                  r.Username AS Username2, 
                                  c.time, 
                                  c.message 
                            FROM chatlog c
                            JOIN user s ON (c.source = s.ID)
                            JOIN user r ON (c.receiver = r.ID)
                            WHERE s.ID = :source AND r.ID = :receiver
                                        ');
$stmt->execute(array(':source' => $sender, ':receiver' => $buddyID ));

// I want to store the Source and the Username here..
$row =  $stmt->fetch(PDO::FETCH_ASSOC);
$chatID = $row['Username1'].$row['r.Username2'];

// ..to create a unique logfile here ..
$dummy = fopen($chatID.".html",'w');
fclose($dummy);

// .. and store the log finally in that file which is used to print in the chatbox
while($log = $stmt->fetch(PDO::FETCH_ASSOC))
{
$fp = fopen($chatID.".html", "a");
fwrite($fp, "<div class='chat_msg'>(" . $log['time'] . ")" . $log['name'] .":  " . $log['message'] . "<br />");
fclose($fp);
}

最佳答案

你的意思是?

SELECT 
       s.Username AS Username1, 
       r.Username AS Username2, 
       c.time, 
       c.message 
FROM chatlog c
JOIN user s ON (c.source = s.ID)
JOIN user r ON (c.receiver = r.ID)
WHERE s.ID = :source AND r.ID = :receiver

关于php - 如何使用连接表中的选定项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41691522/

相关文章:

php - 使用 PHP 和 SSL 更新 svn

javascript - 如何在javascript中转换日期和时间格式?

javascript - 从 div 中选择文本并将其包含到电子邮件中

mysql - Mariadb 主机在 “localhost” 上工作,但不能在 IP 替代 - 127.0.0.1 上工作

php - 将多个数组作为序列化插入到数据库中

php - 替换字符串的第二个实例

php - 向数据库提交多个复选框值

mysql - 获取日期之间的总平均值

MySQL 如何从多个表中获取多行的总和,然后按总降序对结果进行排序?

javascript - 如何构建用户名验证器