Bonjour,
Mon problème est le suivant, je prépare une requête ci-dessous mais un problème lors de l'exécution apparait. Je fais afficher la requête pour la tester via une interface graphique (heidisql).
requête préparée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT valeur FROM ma_table WHERE col = 2 AND date = '2015-04-14 10:25:00'Je rentre la requête dans heidisql, ça ne marche pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part $req = $bdd->prepare('SELECT valeur FROM :tab WHERE col = :idInd AND date = :time');
Je teste ensuite le premier tronçon : SELECT valeur FROM ma_table WHERE c1 = 2 ==> Ca marche.
Je rajoute ensuite le champ date, ça ne marche plus.
Si je remplis le champ date via une valeur contenu dans ma_table, la requête fonctionne.
--> Avec bien sûr la même ligne, mêmes espaces (même si ça change pas grand chose), mêmes valeurs, mêmes quotes etc
Message d'erreur :
Avec ligne 177 étant :Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''ma_table' WHERE col = '1090' AND date = '2015-04-' at line 1' in gen_alarme_model.php:177 Stack trace: #0 gen_alarme_model.php(177): PDOStatement->execute(Array) #1 listeeq_controller.php(112): gen_alarme_model->getAllValeurInd(Array, 'GGSN', Array) #2 [internal function]: listeeq_controller->Ggsn('') #3 index.php(33): call_user_func_array(Array, Array) #4 {main} thrown in gen_alarme_model.php on line 177Avez-vous une idée du pourquoi du comment ça ne marche pas ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part $req->execute([':tab' => $tab, ':idInd' => $listIdInd[$nbInd],':time' => $tabDate[1]]);
Merci d'avance
Partager