Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/mysql] Losowe wyswietlanie
Forum PHP.pl > Forum > Przedszkole
dominiq
Witam.

Ponizszy kod generuje zapytanie do bazy, ktory wyswietla 3 losowe rekordy.
Niestety, wyswyetlaja sie 3 talele (jedna pod druga), ktore wyswietlaja kolejno:
- 1. tabela - 1 rekord
- 2. tabela - 2 rekordy
- 3. tabela - 3 rekordy

Moje pytanie brzmi: Jak "sklecic" kod, zeby wyswietlal 3 losowe rekordy w jednej tabelce, zeby zaden z nich sie nie powtarzal?

  1. <?php
  2. // czymy sir z baz danych
  3. mysql_connect("localhost","admin","haslo");
  4.  
  5. $zapytanie="SELECT dtelefon, miejscowosc, powierz, data, id_rodzaj_nieruchomosci, nazwa
    , rodzaj_nr FROM ogloszenia, rodzaj_nieruchomosci ORDER BY RAND() LIMIT 3"
    ;
  6.  
  7. // wysyamy zapytanie do bazy
  8. $rezultat=mysql_db_query("baza", $zapytanie);
  9.  
  10. // wynik zapytania umieszczamy w odpowiednich zmiennych
  11. while ($rezult=mysql_fetch_array($rezultat)) {
  12. $telefon[] = $rezult["dtelefon"];
  13. $miejscowosc[]  = $rezult["miejscowosc"];
  14. $powierzchnia[]  = $rezult["powierz"];
  15. $data[]  = date('d.m.Y',$rezult["data"]); 
  16. echo("<table border="1">n");
  17. echo("<tr><td>Rodzaj oferty</td><td>Rodzaj oferty</td><td>Rodzaj oferty</td></tr>n");
  18. echo("<tr><td>Rodzaj nieruchomosci</td><td>Rodzaj nieruchomosci</td><td>Rodzaj nieruchomosci</td></tr>n");
  19. echo("<tr><td>$miejscowosc[0]</td><td>$miejscowosc[1]</td><td>$miejscowosc[2]</td></tr>n");
  20. echo("<tr><td>$powierzchnia[0] m<sup>2</sup></td><td>$powierzchnia[1] m<sup>2</sup></td><td>$powierzchnia[2] m<sup>2</sup></td></tr>n");
  21. echo("<tr><td>$telefon[0]</td><td>$telefon[1]</td><td>$telefon[2]</td></tr>n");
  22. echo("<tr><td>$data[0]</td><td>$data[1]</td><td>$data[2]</td></tr>n");
  23. echo("</table>n");
  24.  
  25. }
  26. // zamykamy poczenie z baz
  27. ?>
Crop
Odpowiedz do pierwszej części pytania:
Może wyjmij tabele poza while??
Wstaw wcześniej (przed while):
  1. <?php
  2. echo '<table border="1">';
  3. ?>

a po zamknięciu While
  1. <?php
  2. echo '</table>';
  3. ?>
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.