unexpected character : erreur à l'exécution d'une requête MySQL avec PHP
Bonsoir tout le monde,
Je viens à vous car je cherche en vain depuis plusieurs heures.
La requête que j'essaye d'exécuter avec une variable type texte comme paramètre de l'instruction WHERE produit l'erreur suivante :
Citation:
syntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
la ligne de code de la requête :
Code:
1 2 3 4
| foreach ( $phrases_h as $h ) {
$resultat_h=$connexion->query("SELECT libelle_h FROM phrase_h_heuh WHERE phrase_h='$h'");
...
} |
Le problème vient de la variable $h, pourtant la syntaxe paraît correcte, d'ailleurs si je remplace '$h' par une des valeurs
que cette variable peut prendre, par exemple 'H301', la requête fonctionne :
Code:
1 2 3 4 5
| foreach ( $phrases_h as $h ) {
$resultat_h=$connexion->query("SELECT libelle_h FROM phrase_h_heuh WHERE phrase_h='H301'");
//là ça fonctionne !!!
...
} |
$h provient d'un tableau de type string, obtenu à partir d'une chaîne de caractères avec le séparateur ',' :
Code:
$phrases_h = explode(",", $resultH);
J'ai vérifié en les affichant et les variables $h contiennent bien les valeurs attendues, par exemple : 'H301'
J'ai comme l'impression que c'est un problème de format, de guillemets, mais je n'arrive pas à savoir ce qui cloche : le tableau d'où est
issu $h contient des chaînes de caractères, et $h est bien une chaîne (ce que j'ai vérifié en utilisant gettype())