Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Własne sortowanie wgranych zdjęć według lp.
zibihehe
post
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 16.08.2009

Ostrzeżenie: (0%)
-----


Witam, chodzi o dość banalną sprawę, choć może nie jest aż tak banalna jak mi się wydaje. Mianowicie potrzebuje posortować/poukładać zdjęcia od góry do dołu tak jak chce żeby były poukładane a nie tak jak zostały przesłane na serwer i zapisane do bazy. Mam bazę w txt i są w niej np. fot1.jpg || fot2.jpg || fot3.jpg || fot4.jpg. W pole obok zdjęcia wpisuje jego pozycje lp. jaką chce żeby miało. Próbowałem pętlami ale opornie mi to idzie. :/ (IMG:http://x-trall.tk/przyklad-pomoc.jpg)
Z góry dziękuje za wszelkie podpowiedzi. (IMG:style_emoticons/default/smile.gif)

Ten post edytował zibihehe 29.05.2011, 11:38:02
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Jakoś nie widzę problemów... Skoro OBOK zdjęcia zapisujesz jego pożądaną pozycję to jaki problem użyć funkcji sortującej?
Załóżmy, że w pliku txt masz:
Kod
fot1.jpg 4 || fot2.jpg 2 || fot3.jpg 1 || fot4.jpg 3

Wczytujesz to i robisz explode po ciągu ' || ', który zrobi nam:
  1. $zdjecia = array( [0] => 'fot1.jpg 4', [1] = 'fot2.jpg 2', [2] => 'fot3.jpg 1', [3] => 'fot4.jpg 3' );

Od teraz masz przynajmniej KILKA możliwości rozwiązania problemu.
1) W pętli możesz znów zrobić explode, który poleci po spacji i utworzy:
  1. $zdjecia_unsort = array( [0] => array( [0] => 'fot1.jpg', [1] => 4 ), [1] = array( [0] => 'fot2.jpg', [1] => 2 ), [2] => array( [0] => 'fot3.jpg', [1] => 1 ), [3] => array( [0] => 'fot4.jpg', [1] => 3 ) );
a teraz zdefiniować usort dla mutlidimensional array.
2) od razu usort z wyrażeniem regularnym.
3) wyrażenie regularne z reorganizacją tablicy do postaci:
  1. $zdjecia = array( [4] => 'fot1.jpg', [2] = 'fot2.jpg', [1] => 'fot3.jpg', [3] => 'fot4.jpg' );

i ksort

Oraz wiele innych...
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.10.2025 - 14:26