Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql]mysql_query
Forum PHP.pl > Forum > Przedszkole
230005
Chcę wyciągnąć z bazy dane za pomocą tego zapytania: "select id from `playereditor_categories` where category = 'center'". W odpowiedzi powinienem dostać jeden wiersz, a dostaję dwuwymiarową, jednoelementową tablicę: Array ( [0] => Array ( [0] => 1 [id] => 1 ) ). Id jak widać jest na końcu. Wynik łapię tak:

  1. <?php
  2. while($row = mysql_fetch_array($result))
  3.            $returnArray[] = $row;
  4. ?>


W tabeli w bazie danych wartości są unikatowe, czyli center jest jeden smile.gif. Nie robiłem nic w sql od jakiegoś czasu, więc może to jakiś prosty błąd, ale go po prostu nie widzę smile.gif.
phpion
To z SQL nie ma nic wspólnego; "winna" jest tutaj funkcja mysql_fetch_array" title="Zobacz w manualu PHP" target="_manual, która zwraca Ci "zdublowane" dane tj. w postaci zwykłej tablicy połączonej z tablicą asocjacyjną. Użyj mysql_fetch_row" title="Zobacz w manualu PHP" target="_manual do odebrania tablicy indeksowanej liczbowo lub mysql_fetch_assoc" title="Zobacz w manualu PHP" target="_manual dla tablicy asocjacyjnej.

Jeśli jednak Twoje zapytanie zwraca tylko 1 rekord z 1 kolumną to możesz użyć mysql_result" title="Zobacz w manualu PHP" target="_manual:
  1. <?php
  2. $q = mysql_query('SELECT COUNT(*) FROM tabela');
  3.  
  4. ?>
230005
Dla wersji z mysql_fetch_assoc dostaję: Array ( [0] => Array ( [id] => 1 ) ), dla mysql_fetch_row to samo, tylko z 0 zamiast id, a dla mysql_result błąd: Wrong parameter count for mysql_result().
phpion
No i? Zajrzyj do manuala i zobacz, że dostajesz poprawne dane. Żądasz tablicy to ją dostajesz.
230005
Ok, dla mysql_result dostaję poprawne dane - zapomniałem dodać tego 0 na końcu. A co do spoglądania do manuala, to patrzyłem i nie ma nic o zwracaniu danych w takiej formie jak na początku dostawałem, powinno być jeśli już coś na kształt: array([0] => zero [1] => jeden)
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.