sql >> Database teknologi >  >> RDS >> Mysql

php advarsel mysql_fetch_assoc

Generelt bruges mysql_* funktionerne som følger:

$id = 1234;
$query = 'SELECT name, genre FROM sometable WHERE id=' . $id;
// $query is a string with the MySQL query
$resource = mysql_query($query);
// $resource is a *MySQL result resource* - a mere link to the result set
while ($row = mysql_fetch_assoc($resource)) { 
    // $row is an associative array from the result set
    print_r($row);
    // do something with $row
}

Hvis du sender noget til mysql_fetch_assoc, som ikke er en MySQL-resultatressource (uanset om det er en streng, et objekt eller en boolean), vil funktionen klage over, at den ikke ved, hvad den skal gøre med parameteren; hvilket er præcis, hvad du ser.

En almindelig gotcha :du får denne advarsel, hvis du sender noget (andre end en gyldig forespørgselsstreng) til mysql_query :

$id = null;
$query = 'SELECT name, genre FROM sometable WHERE id=' . $id;
$res = mysql_query($query); 
// $res === FALSE because the query was invalid
// ( "SELECT name, genre FROM sometable WHERE id=" is not a valid query )
mysql_fetch_assoc($res); 
// Warning: don't know what to do with FALSE, as it's not a MySQL result resource


  1. Postgres SSLMode-værdi kræver ugyldig, når SSL-understøttelse ikke er kompileret ved hjælp af udenlandsk dataindpakning

  2. Brug af MS Access-data i en brevfletning

  3. ADDTIME() returnerer 24 timers tid

  4. Løsning af MySQL-fejl Deadlock fundet, når du forsøger at få lås; prøv at genstarte transaktionen