Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]pobiranie danych
Forum PHP.pl > Forum > Przedszkole
srwsio
  1. $sql = "SELECT ids FROM test";
  2. if($database->affected_rows() > 0) {
  3. $row = $database->fetch_array($database->query($sql), MYSQL_ASSOC);
  4. }
  5. echo'<pre>';
  6. print_r($row);
  7. echo'</pre>';
  8.  


ja już zgłupiałem - dlaczego mi pobiera tylko pierwszy rekord z bazy?
z góry dzięki
Pawcio91
Wyświetla Ci tylko jeden wynik bo nie zrobiłeś tego w pętli, a w IFie.
srwsio
a co ma do tego ten if ? affected przecież pobiera liczbę wierszy przetworzonych w ostatnim zapytaniu. Jeśli dam >1 to skrypt kończy działanie - nawet jak usunę ifa to pobiera tylko pierwszy wiersz tabeli
Adis92
Zamiast w pętli if umieść to w pętli while.
  1. $sql = mysql_fetch_array(mysql_query("SELECT ids FROM test"));
  2.  
  3. while($row = mysql_fetch_assoc($sql)){
  4.  
  5. /*zawartość do wyswietlenia */
  6.  
  7. }
Cysiaczek
Problem leży tu:
  1. $row = $database->fetch_array($database->query($sql), MYSQL_ASSOC);

a konkretnie, to co zwraca metoda fetch_array() ? To wygląda na jakąś Twoją klasę i to w niej leży błąd. Mocno sugeruję użycie PDO - to już standard w dzisiejszych czasach smile.gif

--edit
Upewnij się, że ta metoda zwraca wynik działania kodu, który pokazał Ci ~Adis92, czyli iteruje po rekordach, zapisuje je w tablicy i zwraca do Twojej $row
srwsio
  1. $row = $database->query($sql);
  2.  
  3. while ($row2 = $database->fetch_array($row) ){
  4. echo'<pre>';
  5. print_r($row2);
  6. echo'</pre>';
  7. }

i lata aż miło smile.gif

dzięki wielkie
a takie to proste było
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.