Мне нужно извлечь данные из базы данных mysql, но в порядке даты. Я использую команду foreach для получения данных, но когда данные echo'd, это порядок дат для каждого отдельного результата foreach.Дата запроса PHP-запроса несколько результатов запроса
$userId = '29';
$sql="SELECT friendID FROM friendlink WHERE userId='$userId'";
$result=mysqli_query($conn,$sql);
while($row=mysqli_fetch_assoc($result)) {
foreach ($row as $value) {
//echo $value; //echos name of the person
$sql="SELECT * FROM messages WHERE userId='$value' ORDER BY date";
$result2=mysqli_query($conn,$sql);
while($row2=mysqli_fetch_assoc($result2)) {
$message = $row2['message'];
echo $message;
echo "<br />";
} //end while
} //ends foreach
} //end while
Может ли кто-нибудь порекомендовать лучший способ приблизиться к этому. Мне нужно понять, как получить данные из базы данных в одном объявлении, а затем отсортировать результаты.
Прохладный, спасибо Фред. Я никогда не знал этот запрос в mysql, который меня намного ближе. Запустив это, теперь он дает мне данные в порядке даты, но мне нужно добавить 'where friendlink.friendID = $ userId. Просто попробовал несколько методов, но я не могу видеть, куда это пойдет в запросе. – insomniac22
Что вы подразумеваете под этим? 'где это будет в запросе.' –
Я использовал этот запрос в конце, INNER JOIN был тем, чем я был. SELECT * FROM friendlink INNER JOIN сообщения ON friendlink.friendID = messages.userId где friendlink.userId = '$ userId' упорядочивается по дате Спасибо Надан, очень благодарен. – insomniac22