Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Sortowanie tablicy z MySQL
Forum PHP.pl > Forum > Przedszkole
koreja
Witam. Mam mały problem. Mianowicie chcę posortować unikalne wartości województw z tabeli, więc używam polecenia
  1. $query = "SELECT DISTINCT state FROM offer ORDER BY state ASC";

To zapytanie zwraca tablicę, którą poprzez mysql_fetch_array wyciągam i drukuję w liście <ul><li>. Wszystko byłoby ok, gdyby nie fakt, że w mysql zamiast pisać śląskie pisze: ??lÄ?skie. I po wywołaniu powyższego zapytania śląskie zamiast być po s, jest na początku.

Sortowanie poprzez asort, ksort itp nie działa.

Jak można inaczej rozwiązać ten problem?

Pozdrawiam, koreja
kriszna
Najprawdopodobniej masz inne kodowanie w bazie, inne na stronie.
skowron-line
http://wortal.php.pl/wortal/artykuly/pomys...e_znaki_a_mysql
z tym że jeżeli wykonując to zapytanie w konsoli lub myAdminie dostajesz odrazu źle posortowane to znaczy że źle jest kodowana tabela.
koreja
Znaczy w phpMyAdmin zamiast np łódzkie pisze: questionmark.gif??dzkie i według tego sortuje. Baza jest kodowana w utf8 a tabela w utf8-unicode_ci. I dalej nie znalazłem sposobu jak to posortować...

Na stronie wyświetla się ok, z tym, że łódzkie jest na samej górze województw... A nie po lubuskim.
skowron-line
Cytat(koreja @ 10.08.2009, 12:14:33 ) *
Na stronie wyświetla się ok, z tym, że łódzkie jest na samej górze województw... A nie po lubuskim.

Bo masz źle kodowana tabele smile.gif
Ostatnio czytałem gdzies o tym jakąś wzmianke na blogu ale nie moge sobie przypomnieć na jakim więc nie bedzie linka do bloga
ale na otarcie łez
http://forum.php.pl/index.php?showtopic=53...mp;#entry292210
Ociu
Przedszkole.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.