Przy pisaniu połączenia z bazą napotkałem problem. Otóż taki kod:
$result = $mysqli->query("SELECT * FROM `tab` WHERE `id` = '$ID'"); while($attributes = $result->fetch_assoc()) { foreach($attributes as $key => $value) { $this->$key = $value; } }
generuje błąd: Fatal error: Call to a member function fetch_assoc() on a non-object in {...}. Zawsze korzystałem z takiej konstrukcji (tylko pętla foreach wyglądała inaczej) i działało. Teraz już nie.
Var_dump'owałem $result (jest to obiekt mysqli_result), query (jako string, query niczym z podręcznika) a połączenie jest pewne - przez nie stworzyłem tę tabele (w phpmyadmin widać ją).
Więc - skąd ten błąd?
PS klasa ma działającą metodę __set().