我有一个代码应该检查数据库following
以找到当前登录用户所关注的所有人,然后它将搜索第二个数据库posts
以查找他们发布的任何帖子正在关注,但它目前只显示一个帖子。我知道它与JOIN
相比效率不高,但我不完全理解它是如何工作的。
以下是数据库Following
的屏幕截图,它有发送以下请求的用户和他们正在关注的用户应该做的是使用session id
登录用户并查找以下列中用户的所有匹配结果,它应该从列following
获取所有结果并搜索列post
中的数据库code
并将所有结果作为新闻源回显
<?php
$con=mysqli_connect("HOST","USERNAME","PASSWORD","DB");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$myid=$_SESSION['user']['id'];
$result = mysqli_query($con,"SELECT * FROM following WHERE follower='$myid'");
while($row = mysqli_fetch_array($result)) {
$following=$row['following'];
?>
<?php
$con=mysqli_connect("HOST","USERNAME","PASSWORD","DB");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM posts");
while($row = mysqli_fetch_array($result)) {
if ($following==$row['code']){
?>
<div class="content">
<section class="intro">
<h2><a href="/profile/?id=<?php echo $row['code']; ?>"><?php echo $row['name']; ?> <?php echo $row['lastname']; ?></a></h2>
<div class="text">
<?php echo $row['post']; ?>
</div>
<?php
}
else{
}
}
mysqli_close($con);
?>
<?php
}
mysqli_close($con);
?>
答案 0 :(得分:0)
因为我的previouse答案没有帮助你想输出什么? 如果您的数据库有3个关注者,它是否必须以html输出?
但是此代码将输出以下列表中的所有用户像这样..
$result = mysqli_query($con,"SELECT * FROM posts");
echo "<div class='content'> <section class='intro'>";
echo "<h2><a href='/profile/?id=".$row['code']."'>";
while($row = mysqli_fetch_array($result)) {
if ($following==$row['code']){
echo $row['name']." ".$row['lastname']."</a></h2>";
echo $row['post'];
}
echo "<div class='text'>";
echo "</div>";
}
此代码正在输出此内容,但此示例中的粗体文本是指向的链接 /简档/?ID = CODEHERE
史蒂夫·乔布斯&lt; - 是一个链接(转至/ profile /?id = CODEHERE
帖子文字
Johny John
帖子文字
Miracle Tru
帖子文字