PHP Fatal error: Call to a member function fetch_assoc() on a non-object

clinton4

Medlem
Hola!

Jeg prøve å kjøre følgende kode i en PHP fil som også inneholder andre queries.

PHP:
$sql = $mysqli->query("SELECT * FROM table WHERE id = '123'") or die( ( $mysqli->error ) );
while( $rad = $sql->fetch_assoc() ){
    echo $rad['id'];
}

Og da får jeg følgende feilmelding:
PHP Fatal error: Call to a member function fetch_assoc() on a non-object

Men dersom jeg kjører den samme identiske koden i en egen PHP fil, får jeg ikke denne feilmeldingen.

Noen som vet hvorfor dette skjer?

Kan dessverre ikke poste hele koden.
 

xdex

Medlem
Har du prøvd å bare kjøre var_dump($sql) (for å se hva du har og jobbe med i $sql) etter query? Så syntes jeg også det er rart å ha en table som heter table...
 
Sist redigert:

clinton4

Medlem
Ja det har jeg, den gir:

object(mysqli_result)#5 (5) {
["current_field"]=>
int(0)
["field_count"]=>
int(8)
["lengths"]=>
NULL
["num_rows"]=>
int(4)
["type"]=>
int(0)
}

Tabellen heter table fordi jeg kun driver å tester ting og tang :)
 

xdex

Medlem
Dette fungerte helt fint for meg,

Kode:
$mysqli = mysqli_connect('localhost','root','','test') or die(mysqli_error());

$sql = $mysqli->query("SELECT * FROM users WHERE id = '1'") or die( ( $mysqli->error ) );
while( $rad = $sql->fetch_assoc() ){
    echo $rad['id'];
}

Så dersom databasen og alt er på G hos deg, skal det ikke være noe problemer med det du sier over.

Husk også at "TABLE" er ett reservert ord i mysql.

http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
 
Topp