Je développe actuellement une application sur mon WAMP (PHP 5.5.12, MySQL 5.6.17).MySQL: Requête invalide. Pas de message d'erreur
J'ai une fonction qui affiche tous les événements sur la page. Comme il ya une colonne appelée city
, mais dans la base de données cette colonne contient cityID
, j'ai écrit une fonction qui va interroger la base de données pour obtenir le nom de la ville par ID.
Alors, c'est ce que j'ai:
$city = self::getCity($row['id']);
et mon getCity():
// Getting Config file data (DB connection info);
$conf = $this->getConf();
$mysqli = $this->dbConnect($conf);
// Quering...
$query = "SELECT * FROM cities WHERE id = '" . $id . "';";
$result = $mysqli->query($query);
if (!$result) {
$message = 'Invalid query: ' . mysql_error() . "\n";
die($message);
}
$row = $result->fetch_array();
$city = $row['city'];
return $city;
Ce que je reçois ici est: Invalid query:
sans message d'erreur. Je suppose que ma requête est mauvaise, mais j'ai essayé de la modifier de différentes manières (juste pour mentionner, j'ai juste essayé ceci: DROP TABLE cities
, parce qu'il n'y a que 3 ou 4 entrées). Mais avant que j'aie ajouté la chaîne die($message)
, j'éprouvais l'erreur fatale Call to a member function fetch_array() on a non-object
.
Je dois dire qu'il n'y a aucune erreur dans dbConnect()
, parce que je l'appelle d'autres fonctions et cela fonctionne plutôt bien.
Où est mon problème? Qu'est-ce que je fais mal?
UPD: Après avoir mis la langue de MySQL du français vers l'anglais (il a été défini par défaut en français), et en changeant mysql_error
-mysqli_error
(ma faute, désolé), il me dit que No database selected
.
ce n'est pas lié à votre question mais mysqli dead. Utiliser PDO – hakiko
Mysqli est vivant et bien: http://php.net/manual/fr/mysqlinfo.api.choosing.php – andy
où est la définition de la fonction? – hakiko