Accueil > Forum > > > > probleme csv à mysql : accent
probleme csv à mysql : accent
lundi 4 août 2008 à 11:04:50 |
probleme csv à mysql : accent

kataVB
|
boujour tout le monde Pour un site j'ai eu besoin de faire un petit script pour importer des fichies csv vers une table Mysql. le script marche bien, ça n'affiche aucun erreur, et en plus j'ai fait attention aux accent et j'ai pas de souci sauf pour le "Â" je ne comprends pas prq ça marche pas pour cette lettre ... dans ma base de donnée le  est supprimé. Ex : dans mon fichier csv j'ai " Âme ", après l'exécution de mon script le mot devient "me" et ça s'enregistre comme ça dans ma base de donné. voila voila j'ai regardé sur plein de forum, ça parle sur les autres accents mais pas "Â", donc si vous avez une solution je serais très reconnaissant, merci d'avance.
|
|
lundi 4 août 2008 à 15:05:52 |
Re : probleme csv à mysql : accent

Evangun
|
Salut,
ta lettre n'est différente des autres lettres accentuées pour php a priori. Fais plutôt voir ton script; s'occupe-t-il de l'encodage et tu aurais oublié le  ?
PS: en français on ne met pas d'accent aux majuscules, j'ai envie de te dire que ton problème n'a pas lieu d'être :)
|
|
lundi 4 août 2008 à 15:29:15 |
Re : probleme csv à mysql : accent

kataVB
|
boujour tout le monde
oui je sais qu'on met pas d'accent mais j'ai pas tro le choix parce que je dois respecter le cahier de charge ... non, mon script s'occupe pas de l'encodage, mais j'ai respecté les même normes dans ma bbd ainsi que dans mon fichier csv ( UTF-8 )
sinon voici mon script :
<?php //Se connecter à Mysql include 'sql/connection.php';
//Démarrer une session session_start() ;
//Début. //Initialisations $_SESSION['fichiersCSV'] = null; $_SESSION['tables'] = null; $_SESSION["Erreurs"] = null; function enlever($text) { $liste = array(' ','-','_',')','(',']','[',':',',','!',"'",'/','?',','); $text=str_replace($liste,'',$text); $text=str_replace('$','s',$text); $text=strtolower($text); $text=NoAccent($text); return $text; } //Dossier de travail contenant les fichiers CSV $dir= "csv/"; //Extraire la liste des fichiers dans le dossier de travail $dh = opendir($dir); while (false !== ($fichier = readdir($dh))) { //Ne traiter que les fichiers if (!is_file("$dir/$fichier")) continue; //reboucle $_SESSION['fichiersCSV'][] = $fichier; //Déterminer le nom de la table à partir de celui du fichier $nomTable = explode(".", $fichier); //Sépare le nom de l'extension du fichier $nomTable = str_replace('-', '_', $nomTable[0]); //reformate le nom $_SESSION['tables'][] = $nomTable; //stock le nom dans la session //Créer la table si n'existe pas $supprimerTable = "DROP TABLE `$nomTable` "; if (! @mysql_query($supprimerTable, $connexion)) { $_SESSION["Erreurs"][] ='Erreur suppression de la table ' . $nomTable. " (".mysql_error().")"; } $creerTable = " CREATE TABLE IF NOT EXISTS `$nomTable` ( `id` INT( 100 ) NOT NULL AUTO_INCREMENT , `titre` VARCHAR( 200 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL , `lien` VARCHAR( 200 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL , PRIMARY KEY ( `id` ) )"; if (! @mysql_query($creerTable, $connexion)) $_SESSION["Erreurs"][] ='Erreur Création de la table ' . $nomTable. " (".mysql_error().")"; //Effectuer l'importation de données dans la table echo "<br><br>"; $fichier_csv_ouvert = @fopen ("$dir/test.csv", "r"); //ouverture csv en lecture if ( !$fichier_csv_ouvert) $_SESSION["Erreurs"][] ='Erreur Import dans la tables ' . $nomTable . " (Erreur de lecture du fichier CSV)"; // $valeurs_import = array(); //liste des valeurs pour la requête SQL INSERT //Lecture CSV
$var =0; while ($data = @fgetcsv($fichier_csv_ouvert, 10000, ";")) //lire toute une ligne csv { echo utf8_encode($data[0]."<br>"); echo enlever($data[0])."<br>"; echo addslashes($data[0])."<br>"; //echo $var."<br>".$data[0]."<br>"; //Format d'une ligne Values pour SQL INSERT $valeurs_import[] = "('".addslashes($data[0])."','"."ser_".enlever($data[0]).".html"."')"; } //SQL INSERT étendu /*or ($i=0;$i<=count($valeurs_import);$i++) { echo"<br>"; echo $valeurs_import[$i]; }*/ //echo count($valeurs_import); if (count($valeurs_import)>0) { //Import $import = "INSERT INTO `$nomTable` (`titre`,`lien`) VALUES " . implode(",",$valeurs_import); if (! @mysql_query($import, $connexion)) $_SESSION["Erreurs"][] ='Erreur Import dans la table ' . $nomTable . " (".mysql_error().")"; echo $import; } else $_SESSION["Erreurs"][] ='Erreur Import dans la tables ' . $nomTable . " (Fichier CSV vide)";
@fclose ($fichier_csv_ouvert); //fin d'usage du fichier csv }
//Debug echo "Résultat de l'importation à partir de $dir<br><br><br>"; print_r ($_SESSION['fichiersCSV']); echo"<br>"; print_r ($_SESSION['tables']); echo"<br>"; print_r ($_SESSION['Erreurs']); echo"<br>";
?>
|
|
lundi 4 août 2008 à 15:41:46 |
Re : probleme csv à mysql : accent

Evangun
|
Là comme ça à première vue, je soupçonne ta fonction NoAccent, surtout si tu le fais après un utf8_encode. Mais je n'ai pas tout lu en détail, je peux me tromper. Autrement, au moment d'ouvrir la connexion SQL, n'oublie pas mysql_query('SET NAMES utf8 ;'); si tu ne l'as déjà fait. à+
|
|
vendredi 23 janvier 2009 à 05:29:56 |
Re : probleme csv à mysql : accent

Vins974
|
Salut kataVB Je voulais savoir comment t'as fait ton script en gérant en même temps, les accents ??? moi j'ai utilisé AJAX pour ma liste déroulante, et je vois des "?" ..; Aide moi stp merciiii [ 'Tu trouveras toujours plus fort que toi' ]
|
|
Cette discussion est classée dans : script, accent, mysql, probleme, csv
Répondre à ce message
Sujets en rapport avec ce message
Probleme d'accent PHP/MySql (javascript) [ par Vins974 ]
Bonjour, Je crée un site, et j'ai créé un formulaire. J'ai 3 listes déroulante qui sont liées. J'ai enfin réussi à les créés .. Pour cela j'utilise u
Probleme d'accent PHP/MySql (javascript) [ par Vins974 ]
Bonjour, Je crée un site, et j'ai créé un formulaire. J'ai 3 listes déroulante qui sont liées. J'ai enfin réussi à les créés .. Pour cela j'utilise u
Probleme d'affichage des accent [ par SalahDN25 ]
Salut tout le monde j'ai une page php qui affiche du texte d'une base de données mysql, les textes dans la base de données contient des accents qui s
export CSV particulier URGENT HELP!!! [ par ronanT95 ]
Bonjour à tousje requiert votre aide pour un souci sur lequel j'ai buté toute la journée. voilà, pour ma boite, j'ai créé une interface qui me permet
Probleme pour ecrire dans une base de donnée [ par chrisl0 ]
voila jai un petit probleme je n'arriva pas a ecrire dans la base de donnée pourtant elle est créer, sa m'affiche ceci comme erreur: Notice: Undefined
CVS Joomla Mysql [ par hannao ]
Bonjour a tous, je dispose d'un csv contenant de virgule, point virgule, point d'exclamation, point interrrogation, saut de ligne, guillement simple e
Script d'importation automatique de CSV vers BDD [ par jeinny ]
Bonjour à tous! Je vous explique ma situation : je dois récupérer des données excel qui sont au format csv, et les intégrer dans une BDD mysql. Le pro
[Bar => Java] java+mysql [ par bestdmd ]
bonjour je travaille sur une application java/mysql et j'ai un probleme pour la connexion de la bd j'ai aussi un probleme sur comment creer un login e
script php [ par ladyness ]
Bsr a tous, je ss nouvelle sur le site, mais j'espère que vous pourrez m'aider!! parce que la j bloque vraiment!!je veux créer un script pr verifer le
petit probleme facile à résoudre [ par minibenji ]
Bonjour,j'ai confectioné cette petite shoutbox, mais lors de l'affichage des messages, les saut de ligne se transformes en simple espaces... voici u
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|