mr_Bart
15.11.2010, 12:28:41
Witam,
Jestem początkujący w PHP. Może mi ktoś jasno wytłumaczyć jak działa dokładnie funkcja fetch_assoc () lub mysql_fetch_assoc ? Czytałem na php.net, ale nie rozumiem. Z góry dzięki
phpion
15.11.2010, 12:34:02
Zwraca tablicę zawierającą pobrany wiersz, lub FALSE jeżeli nie ma więcej wierszy w wynik.
Użycie mysql_fetch_assoc() jest równoznaczne z wywołaniem mysql_fetch_array() podając jako drugi argument MYSQL_ASSOC. Zwraca jedynie tablicę asocjacyjną. Początkowo tak właśnie zachowywała się funkcja mysql_fetch_array(). Jeśli oprócz indeksowania asocjacyjnego potrzebujesz także numeryczne, użyj funkcji mysql_fetch_array().
Jeżeli dwie lub więcej kolumn wyniku ma te same nazwy, ostatnia kolumna będzie brana pod uwagę. Dostęp do innych kolumn o tej samej nazwie jest możliwy przy użyciu funkcji mysql_fetch_array(), która wprowadzi również indeksowanie numeryczne.
Godne uwagi jest to, że użycie mysql_fetch_assoc() nie jest znacząco wolniejsze od użycia mysql_fetch_row(), a jest bardziej funkcjonalne.
Teraz rozumiesz?
lDoran
15.11.2010, 12:35:14
$hDb = mysqli_connect(...);
$dbQuery = "...";
$result = mysqli_query($hDb, $result);
if(!$result)
return false;
$numRows = mysqli_num_row($result);
for($i = 0; $i < $numRows; $i++) {
$rows = mysqli_fetch_assoc($result);
echo $rows['nazwa_tabeli1'] . ' - ' . $rows['nazwa_tabeli2'] ...; }
mysqli_fetch_assoc() pobiera tablicę asocjacyjną, czyli nazwy kolumn tabeli
mr_Bart
15.11.2010, 20:20:11
Dzięki panowie, rozumiem. Ten kod mi pomógł.