Finalement ça m'aura pris 10 minutes à passer en Mysqli (reste plus qu'à tester le tout).
Encore merci pour vos réponses :).
Version imprimable
Finalement ça m'aura pris 10 minutes à passer en Mysqli (reste plus qu'à tester le tout).
Encore merci pour vos réponses :).
Une bonne chose de faite ;) Et cela t'ouvre en plus la possibilité de faire des requêtes préparées...
Sinon concernant la requête
c'est "l'ancienne" méthode pour définir l'encodage.Code:mysql_query("SET NAMES UTF8");
Avec PHP 5 >= 5.2.3 et MySQL version 5.0.7 ou supérieure utilises plutôt mysql_set_charset
avec mysqli et l'utf-8 cela donne :
Code:mysqli_set_charset($connexion,'utf8');
Oui, ça j'avais compris, mais c'est par rapport où est placé code qui à mon sens n'est pas le bon endroit, c'est à dire dans la fonction select_gen(), car il sera répété autant de fois que cette fonction sera exécuté.Citation:
Envoyé par @po©alypse
Il n'y a pas besoin de définir plus d'une fois l'encodage coté MySQL (ou MySQLi), 1 seule fois suffit.
Du moins pour la même connexion, mais c'est ton cas, la même connexion est conservée tout le long du déroulement d'une page.
Vois tu ?
C'est vrai, en plus on en a parlé il y a à peine quelques jours. :aie:Citation:
Envoyé par ABCIWEB
Ceci dit, c'est par moment difficile de donner un coup d'main sur des trucs qu'on utilise jamais. ;)
Il n'y a pas vraiment de comparaison à faire entre ces 2 là, les données ne viennent pas de la même requête.Citation:
En fait la question peut se résumer à : quelle est la différence entre
$select_d[$i]->titre et $select_doc[0]->titre ????????
Pour : $select_d[$i]->titre
Cette donnée vient de la 1ère requête, et une boucle (for) est effectuée, donc à chaque tour de boucle $i (i comme incrémentation) est incrémentée (+1).
Donc la valeur de $select_d[$i]->titre prend la valeur de chaque titre à chaque tour de boucle.
Pour : $select_doc[0]->titre
Cette donnée vient de la 2ème requête qui se trouve imbriquée dans la 1ère, mais cette fois aucune boucle n'est faite sur celle-ci.
Normal, on effectue une requête qui sélectionne un élément bien précis, et uniquement 1, donc la requête renvoie 1 seul résultat/élément dans le tableau.
L'indice de ce 1er élément est -> 0
Mais il n'y a pas lieu de faire cette 2ème requête maintenant que les problèmes devraient être résolus (problème liés aux quotes et à l'encodage).