我已经在我正在从事的一个项目的道路上走了很长一段路。但是我似乎无法让它工作。
该脚本相当“简单”,但我无法以我想要的方式获得它。我列出了一个收件箱,我可以在其中看到我发送的消息和收到的消息,但是这些是 ID 而不是用户名,我想将 ID 链接到另一个表中的用户名。
所以假设我是 ID 42 用户名 = Moominen
,接收者是 ID 50 用户名 = turtle
表消息
sent_to|sent_by|message|sent_time
42 | 50 | .... | .....
50 | 42 | .... | .....
表成员
Memberid|Username|profilepic|
42 |moominen|img.png |
50 |turtle |turtle.png|
因此,除了更改 SQL 查询的 IF 语句外,我几乎已经完成了所有工作。
$querysent = "SELECT * FROM messages WHERE (sent_by=".$logged." or sent_to=".$logged.") ORDER BY sent_time desc";
$sqlsent = mysqli_query($dbc,$querysent) or die(mysqli_error($dbc));
echo '<h3>Messages</h3>';
while($fetchsent = mysqli_fetch_array($sqlsent)) {
if ($fetchsent["sent_by"] == $logged) {
$query = "SELECT Memberid, Username, profilepic FROM members WHERE Memberid=$logged LIMIT 1";
} else {
$query = "SELECT Memberid, Username, profilepic FROM members WHERE Memberid=".$fetchsent["sent_by"]." LIMIT 1";
}
$sql = mysqli_query($dbc,$query) or die(mysqli_error($dbc));
$fetch = mysqli_fetch_assoc($sql) or die(mysqli_error($dbc));
echo '<table class="table-condensed">
<th>Sent by</th><th>Sent To</th><th>Message</th><th>Time</th>';
echo ('<tr><td><a href="index.php?page=profile&id='.$fetchsent["sent_by"].'">'.$fetch["Username"].'</a></td>
<td><a href="index.php?page=profile&id='.$fetchsent["sent_to"].'">'.$fetch["Username"].'</td>
<td>'.$fetchsent["message"].'</td>
<td><abbr class="postdate" title="'.$fetchsent["sent_time"].'"></a></td>
');
echo ('</tr>');
echo '</table>';
}
问题是我无法将用户名链接到表中的相应 ID。