<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="GET">
<select name="order">
<option value=' data_wpisow ASC'> Data ROSN.</option>
<option value=' data_wpisow DESC'> Data MALEJ.</option>
<option value=' naglowek_wpisu ASC'> Wpisy ROSN.</option>
<option value=' naglowek_wpisu DESC'> Wpisy MALEJ.</option>
</select>
<button type="submit">Sortuj</button>
</form>
$order = "SELECT * FROM wpisy ORDER BY";
if(isset($_REQUEST['order'])) {
$order .= $_REQUEST['order'];
}
else {
$order .= 'data_wpisow DESC';
}
$tw = mysqli_query($conn, $order);
while ($row = mysqli_fetch_assoc($tw)) {
.....
}
Szukałem różnych przykładów, ale nie mogę znaleźć nic konkretnego.
Mam stronke w php ktora tworzy kolejne divy->okienka(wpisy), zrobiłem sortowanie wg daty_wpisu, nazwy_wpisu, treści wpisu, ale chce zrobić przełącznik (przycisk) zmieniający sortowanie. Próbuje to zrobić tak jak wyżej, ale nie działa. Zapytanie jest generowane poprawnie, strona działa, ale nie wyświetla nowego sortowania po naciśnięciu.
Problem jest w linii: while ($row = mysqli_fetch_assoc($tw)) która wyświetla notice:
mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/...
Sporo już próbowałem. Proszę o radę, ew. inną technologię, ktora zrobi taki działający select/przycisk sortowania.
PROBLEM ROZWIĄZANY dałem coś takiego pod zapytanie $tw:
if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit(); }
bledu nie wyswietlilo
zmieniłem metode na POST
i z ciekawości dałem w tym miejscu dwie spacje zamiast jednej:
$order = "SELECT * FROM wpisy ORDER BY"
Nie do końca rozumiem co to zmieniło, ale zaczeło działać.