Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pobieranie danych - problem ogólny
Forum PHP.pl > Forum > Bazy danych
Mario1973
Witam,

od dwóch dni męczę się z prostą sprawą i nie potrafię znaleźć błędu.

Chcę z małej tabeli pobrać wszystkie rekordy. W phpmyadminie wpisuję zapytanie :

SELECT slowo FROM `kat_search`

i dostaję ładnie to co chcę - w wyniku 5 wartości, ale teraz to samo w kodzie php

$pyt = "SELECT slowo FROM `" . $g_przedrostek. "search`";
$odp_tmp = $DB->query($pyt);
$wyn=mysql_fetch_row($odp_tmp);
$ile=mysql_num_rows($odp_tmp);

i teraz testowe wydruki zmiennych

echo $pyt;

i ładnie pokazuje o co pytam :

SELECT slowo FROM `kat_search`


echo $ile;

pokazuje, że zwraca

5


ale


print_r ($wyn);


daje tylko jeden rekord

Array ( [0] => domy )

a gdzie reszta ? dlaczego tutaj nie ma wszystkich rekordów ?


M
porady-it.pl
Aby przejrzeć rekordy zwracane przez bazę należy wykorzystać pętlę która przejdzie przez elementy zwracane przez bazę:

  1. <?php
  2. $pyt = "SELECT slowo FROM `" . $g_przedrostek. "search`";
  3. $odp_tmp = $DB->query($pyt);
  4. $ile=mysql_num_rows($odp_tmp);
  5.  
  6. while($wyn=mysql_fetch_assoc($odp_tmp))
  7.    echo $wyn['slowo'].'<br />';
  8. ?>
Mario1973
Dziękuję exclamation.gif i Przepraszam za naprawdę prosty problem.

A możesz jeszcze powiedzieć gdzie jest błąd w moim rozumowaniu ?

dlaczego

$wyn=mysql_fetch_row($odp_tmp); (czy to nie pobiera wszystkich rekordów jednak?)
print_r ($wyn);

nie pokazało całej zawartości ?


M
phpion
Nie, takie przypisanie (bez pętli) pobierze tylko pierwszy zwrócny przez zapytanie rekord (dlatego w wyniku masz tablicę jednoelementową).
Mario1973
Dzięki. Coś mi się ubzdurało, że jednym 'machnięciem' mogę pobrać wszystkie wartości.

Dawno nie widziałem tak przyjaznego forum !

M
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.