Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] sortowanie i wrzucanie do jednego zbioru...
synus
post
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 28.12.2005

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


Hej (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Mam maly problem, i nie do konca wiem jak go rozwiazac.

Mam skrypt:
  1. <?php
  2. $sql = "SELECT nazwa, rodzaj FROM hot_lot WHERE miasto='".$_GET['miasto']."'";
  3. $wynik = mysql_query($sql) or die(mysql_error());
  4. while( $w = mysql_fetch_array($wynik))
  5. {
  6. $nazwa = $w['nazwa'];
  7. $rodzaj = $w['rodzaj'];
  8. $nazwa2 = str_replace('_', ' ', $nazwa);
  9. $nazwa2 = ucwords($nazwa2);
  10. if($rodzaj == 'hotel5')
  11. {
  12. echo('Hotele ***** <br />');
  13. echo('<a href="?str='.$_GET['str'].'&panstwo='.$_GET['panstwo'].'&miasto='.$_GET['miasto'].'&nazwa='.$nazwa.'">'.$nazwa2.'</a><br />');
  14. }
  15. if($rodzaj == 'hotel4')
  16. {
  17. echo('Hotele **** <br />');
  18. echo('<a href="?str='.$_GET['str'].'&panstwo='.$_GET['panstwo'].'&miasto='.$_GET['miasto'].'&nazwa='.$nazwa.'">'.$nazwa2.'</a><br />');
  19. }
  20. if($rodzaj == 'hotel3')
  21. {
  22. echo('Hotele *** <br />');
  23. echo('<a href="?str='.$_GET['str'].'&panstwo='.$_GET['panstwo'].'&miasto='.$_GET['miasto'].'&nazwa='.$nazwa.'">'.$nazwa2.'</a><br />');
  24. }
  25. if($rodzaj == 'hotel2')
  26. {
  27. echo('Hotele ** <br />');
  28. echo('<a href="?str='.$_GET['str'].'&panstwo='.$_GET['panstwo'].'&miasto='.$_GET['miasto'].'&nazwa='.$nazwa.'">'.$nazwa2.'</a><br />');
  29. }
  30. if($rodzaj == 'hotel1')
  31. {
  32. echo('Hotele * <br />');
  33. echo('<a href="?str='.$_GET['str'].'&panstwo='.$_GET['panstwo'].'&miasto='.$_GET['miasto'].'&nazwa='.$nazwa.'">'.$nazwa2.'</a><br />');
  34. }
  35. if($rodzaj == 'klub')
  36. {
  37. echo('Kluby <br />');
  38. echo('<a href="?str='.$_GET['str'].'&panstwo='.$_GET['panstwo'].'&miasto='.$_GET['miasto'].'&nazwa='.$nazwa.'">'.$nazwa2.'</a><br />');
  39. }
  40. if($rodzaj == 'apartament')
  41. {
  42. echo('Apartamenty <br />');
  43. echo('<a href="?str='.$_GET['str'].'&panstwo='.$_GET['panstwo'].'&miasto='.$_GET['miasto'].'&nazwa='.$nazwa.'">'.$nazwa2.'</a><br />');
  44. }
  45. if($rodzaj == 'wakacyjny')
  46. {
  47. echo('Domy wakacyjne <br />');
  48. echo('<a href="?str='.$_GET['str'].'&panstwo='.$_GET['panstwo'].'&miasto='.$_GET['miasto'].'&nazwa='.$nazwa.'">'.$nazwa2.'</a><br />');
  49. }
  50. if($rodzaj == 'wycieczki')
  51. {
  52. echo('Wycieczki <br />');
  53. echo('<a href="?str='.$_GET['str'].'&panstwo='.$_GET['panstwo'].'&miasto='.$_GET['miasto'].'&nazwa='.$nazwa.'">'.$nazwa2.'</a><br />');
  54. }
  55.  
  56. }
  57. ?>

Ktory jak widzicie, sortuje mi dane na 9 rodzajow: hotel 5cio gwiazdkowy, 4ro, itd., apartamenty, wycieczki etc.

Bylem pewny (dopoki byl wrzucony tylko jeden rekord do bazy) ze wszystko bedzie sie wyswietlalo tak, jak chcialem, jednak wynik wyswietlenia jest taki:

Cytat
Hotele *****
Aruba Mariott Resort
Hotele ****
Divi All Inclusive
Hotele ****
Bucuti Beach Resort
Hotele ***
Amsterdam Manor Beach Resort
Hotele ***
Manchebo Beach Resort & Spa


a chcialbym zeby byl taki:
Cytat
Hotele *****
Aruba Mariott Resort
Hotele ****
Divi All Inclusive
Bucuti Beach Resort
Hotele ***
Amsterdam Manor Beach Resort
Manchebo Beach Resort & Spa

Zapomnialem, ze petla while mieli kazdy przypadek z osobna.
Chcialbym to wszystko wrzucic do "jednego wora"... i nie wiem, czy wystarcza mi do tego tablice, czy bede musial skorzystac z wyrazen reg. czy z obu na raz. I nie wiem jak to ugryzc szczerze.
Prosze, pomozcie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)


edit: wiem, ze jest teraz skrypt podatny na sql injection w kazdym (prawie) calu, ale latac to bede dopiero jak bedzie wszystko dzialac tak jak powinno.

Ten post edytował synus 5.09.2006, 10:51:23
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
^bmb
post
Post #2





Grupa: Zarejestrowani
Postów: 69
Pomógł: 2
Dołączył: 12.12.2005

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


Hm... ja bym zrobil poprostu w bazie pole int rodzaj w ktorym podczas dodawania hotelu zapisywala by sie liczba 1-5 a pozniej tylko w zapytaniu ORDER BY rodzaj DESC.

Mam nadzieje ze cos pomoglem

Pozdrawiam
bmb
Go to the top of the page
+Quote Post

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: 25.08.2025 - 12:20