sql >> Databáze >  >> RDS >> Mysql

php varování mysql_fetch_assoc

Obecně se funkce mysql_* používají následovně:

$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
}

Pokud do mysql_fetch_assoc předáte něco, co není zdrojem výsledků MySQL (ať už je to řetězec, objekt nebo boolean), funkce si bude stěžovat, že neví, co s parametrem dělat; což je přesně to, co vidíte.

Obvyklý problém :toto varování se zobrazí, pokud do mysql_query předáte něco (jiného než platný řetězec dotazu) :

$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. Jak provést bodovou obnovu dat MySQL a MariaDB pomocí ClusterControl

  2. Seskupování klauzulí WHERE v Codeigniter

  3. Přidejte znak měny £, $ do určitých polí ORACLE

  4. 2 způsoby, jak vypsat všechny uložené procedury v MySQL