Mam na stronie system powaidomień. Taki dzwoneczek z liczbą który po najechaniu pokazuje kontener o nazwie "powiadomienia". Wszystko aktualizuje się AJAXem w tle żeby user zawsze na bierząco widział ilość powiadomień. I teraz moje pytanie. Na chwilę obecną zrobiłem JSONa którego pobiera user. Wygląda on mniej więcej tak:
Przecież i tak pobierasz to w js. A do takiej komunikacji lepiej nadają się server-sent events.
Jeszcze jedno pytanko. Jak to posortować po dacie? Dodam, ze ORDER BY w MySQLu nie wchodzi w rachubę bo powiadomienia brane są z trzech różnych tabel. Jedynym wspólnym mianownikiem jest data w takim samym formacie.
Jeśli wyniki są łączone na poziomie PHP: https://www.php.net/manual/en/function.usort.php
Jeśli możesz połączyć wyniki na poziomie MySQL, to użyj UNION ALL oraz ORDER BY.
Myślałem na UNIONem ale przed złączeniem muszę nieco inaczej obrobić dane z tabeliA niż z tabeliB. Taki kod zadziałał:
return function ($a, $b) use ($key) { return http://www.php.net/strnatcmp($a[$key], $b[$key]); ; } http://www.php.net/usort($arr, build_sorter('date'));
$arr = http://www.php.net/array_reverse($arr);
<http://december.com/html/4/element/a.html class="dropdown-item d-flex align-items-center" href="#"> <http://december.com/html/4/element/div.html class="mr-3"> <http://december.com/html/4/element/div.html class="$icon"> <http://december.com/html/4/element/i.html class="fas fa-exclamation-triangle text-white"></http://december.com/html/4/element/i.html> </http://december.com/html/4/element/div.html> </http://december.com/html/4/element/div.html> <http://december.com/html/4/element/div.html> <http://december.com/html/4/element/div.html class="small text-gray-500">$name - $date</http://december.com/html/4/element/div.html> $text </http://december.com/html/4/element/div.html> </http://december.com/html/4/element/a.html>
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)