MYSQLI et résultat de requête "SET .."
Bonjour.
Je travail sur une application qui doit traiter des données multilingues. Du coup après ma connexion à une BDD, je paramètre l'encodage, des futures échanges avec la BDD, en UTF8.
Pour cela j'utilise la requêtes :
Code:
SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8';
Cette requête retourne un résultat vide même quand elle s’exécute correctement. Je n'arrive donc pas, en PHP, à savoir si la requête s'est bien exécutée ou si une erreur s'est produite.
J'ai essayé plusieurs possibilité :
Code:
1 2 3 4 5 6
| $db = new mysqli('localhost', '', '', 'maBDD');
if(!$db->connect_errno){
$res = $db->query("SET character_set_results = 'utf8' ... "); // ma requête
if($res===false){echo 'failed setDBEncodage';} //la condition est toujours validé
if(!$res){echo 'failed setDBEncodage';} //la condition est toujours validé
}else{ $this->log_->addRow('failed DB connection');} |
L'exécution de la requête (même fausse) ne génère pas d'erreur dans la BDD ... je ne peux donc pas utiliser "$db->connect_errno" après l'exécution de la requête.
Existe t-il une solution pour contourner ce problème?
Merci d'avance. 8-)