Сортировка и отделение имен от базы данных - PullRequest
0 голосов
/ 06 ноября 2018

Может ли кто-нибудь указать мне правильное направление?

У меня есть база данных с несколькими сообщениями. Каждое сообщение также имеет имя пользователя ..

Я хочу использовать имена сообщений в раскрывающемся меню, чтобы пользователь мог щелкнуть пользователя и просмотреть сообщения от пользователя.

ПРОБЛЕМА : в раскрывающемся списке показан каждый пользователь каждого сообщения, и я не знаю, как разделить пользователей, чтобы при наличии 7 сообщений из ROB отображался только 1 ROB. выпадающий список ..

Я надеюсь, что здесь есть смысл.

Так что, если бы кто-нибудь мог помочь мне здесь, я был бы благодарен.

Какой запрос я должен использовать, чтобы каждый пользователь отделялся от базы данных, чтобы я мог отобразить его в раскрывающемся меню как отдельные пользователи ...

Вместо одного и того же пользователя отображается столько сообщений, сколько написал пользователь.

Ниже приведен текущий запрос ..

<div class='userbox'>
<header class='ubheader'>Contacts</header>
<section class='ubmain'>
";


    $db = new PDO("mysql:host=localhost;dbname=messages", 'root', ''); // 1. set database with this instead of conect - or change conect to this

    $query="SELECT * FROM `messagedatabase` WHERE `listID`='$listID' ORDER BY messagedate DESC";

    $stat=$db->prepare($query);

    $stat->execute();
        $Mcount = $stat->rowCount();
        $messagecount=$Mcount;

        while($row = $stat->fetch()){
             $messageaccountname=$row['messageaccountname'];

                if ($messageaccountname != $useraccountname){
                            echo"<div class='ubnames' onclick='selectmessage(\"{$messageaccountname}\")'>{$messageaccountname}</div>";  
                }
        }



echo "
</section>

</div>
";              

Любая помощь будет оценена.

Большое спасибо.

1 Ответ

0 голосов
/ 06 ноября 2018

Простым решением было бы добавить предложение DISTINCT к вашему запросу, например: SELECT DISTINCT messageaccountname FROM ....

Кроме того, похоже, что база данных не нормализована. В идеале ваши учетные записи должны располагаться в отдельной таблице, которая будет связана с вашей таблицей messagedatabase. Но дизайн базы данных - это другое обсуждение, выходящее за рамки этого поста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...