Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Problem z tablicami
-nickkk-
post
Post #1





Goście







Witam,
Mam zapytanie do bazy, w którym wyciagam nazwy użytkowników online:

Kod
o_online

nazwau1
nazwau2
nazwau3


Chciałbym zapisać każdy element tablicy do zmiennej i ją wyświetlić:

foreach ($fetch as $klucz => $user)
{
echo $user;
}

Niestety zwraca mi tylko pierwszy element z tablicy $fetch. Co robię źle?

Inny problem. Chcę wyświelić te same dane w innych sposób:

Kod
while ($fetch = $db_uchwyt->fetch_array(MYSQLI_ASSOC)) {
echo $fetch['o_login'];    
}


Wyświetla mi wszystkie elementy tablicy, poza pierwszym na liście czyli np. nazwau1. Tablicę wcześniej zresetowałem. Po zresetowaniu funkcja current() pokazuje aktualny element jako nazwau1, czyi problem poprawnego zapytania odpada. Gdzie robię błąd z tymi dwoma pętlami?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Kicok
post
Post #2





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


To popatrz na takie czary:
  1. <?php
  2.  
  3. $db_sql = "SELECT users.u_login AS o_login FROM online, users WHERE online.u_id = user
    s.u_id"
    ;
  4. $db_uchwyt = $this->query($db_sql);
  5.  
  6. echo '<pre>';
  7. /* 1 */ print_r( $db_uchwyt->fetch_array(MYSQLI_ASSOC) );
  8. /* 2 */ print_r( $db_uchwyt->fetch_array(MYSQLI_ASSOC) );
  9. /* 3 */ print_r( $db_uchwyt->fetch_array(MYSQLI_ASSOC) );
  10. /* 4 */ print_r( $db_uchwyt->fetch_array(MYSQLI_ASSOC) );
  11. echo '</pre>';
  12.  
  13. ?>

Cztery razy wykonuję identyczną linijkę kodu i za każdym razem otrzymuję inny wynik.
Jedno wywołanie metody $db_uchwyt->fetch_array() wyświetla tylko jeden wiersz danych, a nie od razu cały wynik zapytania. Przy pętli foreach metodę $db_uchwyt->fetch_array() wywołałeś raz, więc dostałeś jeden wiersz. Natomiast przy while metoda fetch_array() wywoływana była za każdym razem gdy sprawdzany był warunek pętli:
  1. <?php
  2.  
  3. while( $fetch = $db_uchwyt->fetch_array() )
  4.  
  5. ?>
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: 7.10.2025 - 03:10