Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Sortowanie wynikow zapytania z wyrazeniem regularnym
Forum PHP.pl > Forum > Przedszkole
filout
zadaje pewnie banalne pytanie, ale od tego chyba jest ten dzial wink.gif

chce wykonac zapytanie, ktore posortuje mi wyniki wedlug: ciagu znakow (nawias [ , ctery cyfry , nawias] ) i alfabetycznie
ponizsze zapytanie dziala prawidlowo, ale tylko w przypadku gdy wystepuje tylko jeden tekst w nawiasie

  1. $th = mysql_query("SELECT *, SUBSTRING( `tytul` , LOCATE('[', `tytul`), LOCATE(']', `tytul`) ) AS th1 FROM temat ORDER BY th1 DESC, tytul ASC");


w przypadku gdy w polu tytul mam np. [hej]to ja[jest][super]w roku[2012] sortowanie nie dziala juz po mojej mysli
zamiast sortowac wedlug wartosci liczbowej (w tym przypadku 2012) sortuje wedlug kazdego napotkanego ciagu pomiedzy nawiasami []

probowalem, wiec zastosowac wyrazenie regularne:

  1. $th = mysql_query("SELECT *, SUBSTRING( `tytul` , '/[[0-9]{4}/]' ) AS th1 FROM temat ORDER BY th1 DESC, tytul ASC");


i tu musialem namieszac

teraz problem: jak wrzucic do tego zapytania wyrazenie regularne, ktore bedzie dzialalo po mojej mysli?


=====================


brak odpowiedzi chyba nie wskazuje na zbyt zawily problem wink.gif

szkoda tylko, ze nikt nie uswiadomil mi, ze w mySQL regex zwraca wartosci: true lub false
dzieki pomocy wujka google doszedlem do tego sam smile.gif

teraz po raz kolejny jestem w kropce...

po wielu probach, ktore czesto konczyly sie bledami udalo mi sie wrzucic wynik mojego zapytania do tablicy jednowymiarowej

  1. $th = mysql_query("SELECT * FROM temat");
  2.  
  3. while ($tem = mysql_fetch_array($th))
  4. {
  5. //tworzy tymczasowa zmienna ->
  6. $tmp=$tem['ikona']."Tytuł: ".$tem['tytul']." napisał: ".$tem['podpis']
  7.  
  8. // -> ktora pozniej jest przekazywana do tablicy
  9. $tabtem[]=$tmp;
  10.  
  11. }


nadal jednak nie wiem jak posortowac tablice po swojemu
jaslanin
http://php.net/manual/en/array.sorting.php
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.