Souci multifactoriel avec codage UTF-8 dans localhost (wamp)
Résolu/Fermé
stephdem
Messages postés
36
Date d'inscription
mardi 7 avril 2009
Statut
Membre
Dernière intervention
30 octobre 2019
-
21 déc. 2016 à 14:42
Utilisateur anonyme - 26 déc. 2016 à 20:44
Utilisateur anonyme - 26 déc. 2016 à 20:44
A voir également:
- Souci multifactoriel avec codage UTF-8 dans localhost (wamp)
- Codage ascii - Guide
- Clé windows 8 - Guide
- Codage binaire - Guide
- Mixcraft 8 - Télécharger - Création musicale
- Internet explorer 8 - Télécharger - Navigateurs
8 réponses
Utilisateur anonyme
Modifié par le père. le 22/12/2016 à 19:02
Modifié par le père. le 22/12/2016 à 19:02
Dans cette opération de connexion à mysql, il faut préciser que tu utilises l'UTF-8, même si tes tables ont déjà cet encodage. C'est étonnant, je suis d'accord, mais c'est ainsi.
Une des syntaxes possibles consiste à ajouter un array d'options en guise de 4e paramètre lors de la connexion :
Une des syntaxes possibles consiste à ajouter un array d'options en guise de 4e paramètre lors de la connexion :
$connexion = new PDO('mysql:host=' . $PARAM_hote . ';dbname=' . $PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe, array( PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
Utilisateur anonyme
Modifié par le père. le 21/12/2016 à 16:30
Modifié par le père. le 21/12/2016 à 16:30
Bonjour
Juste pour vérification, peux-tu nous mettre sur cjoint.com (ou autre) un de tes fichiers csv encodés en utf-8 ? Quelque chose qui ne soit pas confidentiel, évidemment.
Autre précision, quelle est la collation de tes tables mysql ?
Et lors de ta connexion à mysql dans ton php, précises-tu bien le charset utf-8 ?
Juste pour vérification, peux-tu nous mettre sur cjoint.com (ou autre) un de tes fichiers csv encodés en utf-8 ? Quelque chose qui ne soit pas confidentiel, évidemment.
Autre précision, quelle est la collation de tes tables mysql ?
Et lors de ta connexion à mysql dans ton php, précises-tu bien le charset utf-8 ?
stephdem
Messages postés
36
Date d'inscription
mardi 7 avril 2009
Statut
Membre
Dernière intervention
30 octobre 2019
21 déc. 2016 à 17:17
21 déc. 2016 à 17:17
Bonjour,
Le site est en production donc confidentiel et les csv de chaque table font plusieurs millions d'octets.
A la rigueur si intérêt ce serait possible de prendre un csv et de ne garder que les 2 premières lignes, une ligne avec des caractères spéciaux et la dernière ligne.
Pour la collation de la base et des tables c'est utf8_general_ci
Pour la dernière question je ne comprend pas, dans wampserver je vais dans localhost et j'appelle une page qui toutes commencent par
<meta charset="UTF-8">
A+, Steph
Le site est en production donc confidentiel et les csv de chaque table font plusieurs millions d'octets.
A la rigueur si intérêt ce serait possible de prendre un csv et de ne garder que les 2 premières lignes, une ligne avec des caractères spéciaux et la dernière ligne.
Pour la collation de la base et des tables c'est utf8_general_ci
Pour la dernière question je ne comprend pas, dans wampserver je vais dans localhost et j'appelle une page qui toutes commencent par
<meta charset="UTF-8">
A+, Steph
Utilisateur anonyme
21 déc. 2016 à 17:29
21 déc. 2016 à 17:29
Effectivement, quelques lignes pourraient suffire si elles comportent des caractères non ASCII. Mais finalement, c'est inutile si tes tables mysql ont bien une collation utf8 et que leur contenu s'affiche correctement avec PHPMyadmin.
Pour le point que tu ne comprends pas, il s'agit de la connexion à la base de données, il y a une option à mettre pour indiquer que les données seront transmises en utf-8. Peux-tu montrer le code que tu utilises pour la connexion à mysql, sans le mot de passe évidemment ?
Pour le point que tu ne comprends pas, il s'agit de la connexion à la base de données, il y a une option à mettre pour indiquer que les données seront transmises en utf-8. Peux-tu montrer le code que tu utilises pour la connexion à mysql, sans le mot de passe évidemment ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
stephdem
Messages postés
36
Date d'inscription
mardi 7 avril 2009
Statut
Membre
Dernière intervention
30 octobre 2019
21 déc. 2016 à 18:08
21 déc. 2016 à 18:08
Le fichier .php de connexion est dans un require
<php
$param_hote='localhost';
$param_port='3306';
$param_nom_bd='blablamysql';
$param_utilisateur='root';
$param_mot_passe='xxx';
?>
J'ai un autre fichier pour le test en ligne.
Voilà?
A+
Steph
<php
$param_hote='localhost';
$param_port='3306';
$param_nom_bd='blablamysql';
$param_utilisateur='root';
$param_mot_passe='xxx';
?>
J'ai un autre fichier pour le test en ligne.
Voilà?
A+
Steph
Utilisateur anonyme
21 déc. 2016 à 18:21
21 déc. 2016 à 18:21
Tu n'as donné qu'une liste de variables. Qui interviennent dans la connexion, soit, mais il manque la connexion proprement dite.
Tu n'as pas quelque chose qui ressemble à :
Tu n'as pas quelque chose qui ressemble à :
$connexion= new PDO('mysql...?
stephdem
Messages postés
36
Date d'inscription
mardi 7 avril 2009
Statut
Membre
Dernière intervention
30 octobre 2019
22 déc. 2016 à 18:03
22 déc. 2016 à 18:03
Bonjour,
Ah si, bien sûr j’ai la ligne suivante dans chaque fichier :
$connexion = new PDO('mysql:host=' . $PARAM_hote . ';dbname=' . $PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
Dans le code complet suivant
<?php
error_reporting(E_ALL);
require ("aaaaaa.php");
try {
$connexion = new PDO('mysql:host=' . $PARAM_hote . ';dbname=' . $PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
} catch (Exception $e) {
echo 'Erreur : ' . $e->getMessage() . '<br />';
echo 'N° : ' . $e->getCode();
}
A+
Steph
Ah si, bien sûr j’ai la ligne suivante dans chaque fichier :
$connexion = new PDO('mysql:host=' . $PARAM_hote . ';dbname=' . $PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
Dans le code complet suivant
<?php
error_reporting(E_ALL);
require ("aaaaaa.php");
try {
$connexion = new PDO('mysql:host=' . $PARAM_hote . ';dbname=' . $PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
} catch (Exception $e) {
echo 'Erreur : ' . $e->getMessage() . '<br />';
echo 'N° : ' . $e->getCode();
}
A+
Steph
stephdem
Messages postés
36
Date d'inscription
mardi 7 avril 2009
Statut
Membre
Dernière intervention
30 octobre 2019
26 déc. 2016 à 14:52
26 déc. 2016 à 14:52
Bonjour le Père,
çà marche nickel... un vrai miracle.
Et je n'avais pas lu cette clause dans mes bouquins MySQL!
Merci !
C'est résolu.
Bonnes fêtes !
Bises.
Steph
çà marche nickel... un vrai miracle.
Et je n'avais pas lu cette clause dans mes bouquins MySQL!
Merci !
C'est résolu.
Bonnes fêtes !
Bises.
Steph