У меня есть PHP-код, который должен показать, кто предпочитает сообщение.
Функция работает нормально, но теперь сталкивается с проблемой, когда я не первый фаворит.
Дисплей данных покажет: Пользователь A, Пользователь B, Вы одобрили это.
Но если я первый, я буду прав, как показано ниже: вы, пользователь A, пользователь B, любили это. <- что я хотел.
И вот код PHP:
$query = mysqli_query("SELECT U.username, U.uid, U.full_name, M.uid_fk FROM tb_favorite M, tb_user U WHERE U.uid = M.uid_fk AND M.msg_id_fk = '$get_post_id' LIMIT 3");
$new_like_count = $get_like_count - 3;
while($row = mysqli_fetch_array($query))
{
$like_uid = $row['uid_fk'];
$likeusername = $row['username'];
$likefull_name = $row['full_name'];
if($like_uid == $uid)
{
echo '<span id="you'.$get_post_id.'"><a href="'.$likeusername.'">You</a>, </span>';
}
else
{
echo '<a href="'.$likeusername.'">'.$likefull_name.' </a>';
}
}
if($new_like_count < 1)
{
echo ' favorited this';
}
else
{
echo 'and '.$new_like_count.' other friends favorited this';
}
Вы можете использовать пустую строку для добавления/добавления символов условно и, наконец, печати. Учти это:
$query = mysqli_query("SELECT U.username, U.uid, U.full_name, M.uid_fk FROM tb_favorite M, tb_user U WHERE U.uid = M.uid_fk AND M.msg_id_fk = '$get_post_id' LIMIT 3");
$new_like_count = $get_like_count - 3;
$customString = '';
while($row = mysqli_fetch_array($query))
{
$like_uid = $row['uid_fk'];
$likeusername = $row['username'];
$likefull_name = $row['full_name'];
if($like_uid == $uid)
{
$customString = '<span id="you'.$get_post_id.'"><a href="'.$likeusername.'">You</a>, </span>'.$customString; // Prepend
}
else
{
$customString .= '<a href="'.$likeusername.'">'.$likefull_name.' </a>'; //Append
}
}
if($new_like_count < 1)
{
$customString .= ' favorited this';
}
else
{
echo $customString.'and '.$new_like_count.' other friends favorited this';
}