decoe utf-8

NInferno
Invité n'ayant pas de compte PHPfrance

23 nov. 2012, 20:50

Bonjour,

J'ai un code pour exporter les donnée d'une base de donné vers un fichier excel (il fonctionne)

Cependant ma BDD est en UTF-8 et dans excel cela m'affiche des caractère spéciaux a la place des "é"..

Il faut surment que j'utilise un utf8_decod mais je ne sais pas ou ni comment l'inséré dans le script .

Merci



<?php
// Connexion à la base de données

require("conf.php3"); //On insert le fichier qui contient les informations

$sql = connect_sql(); //On se connecte à MySQL
mysql_select_db("$sql_bdd") or die ("Connexion Impossible");

//Requete SQL
$query = "SELECT * FROM inscription";
$result = mysql_query($query) or die(mysql_error());

// Entêtes des colones dans le fichier Excel
$excel .= "Titre 1 \t Titre 2 \t Titre 3\n";

//Les resultats de la requette
while($row = mysql_fetch_array($result))
{
$excel .= " $row[nom] \t $row[prenom] \t $row[sex] \n ";
}

header("Content-type: application/vnd.ms-excel");
header("Content-disposition: attachment; filename=nom_fichier.xls");
print $excel;
exit;
?>

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

23 nov. 2012, 22:42

salut,


sur cette ligne les utf8_decode
$excel .= " $row[nom] \t $row[prenom] \t $row[sex] \n ";

ce fichier sera un fichier CSV avec la tabulations en séparateur, et pas un fichier excel à proprement parler, tu devrait changer le content-type.

@+
Il en faut peu pour être heureux ......

Niferno
Invité n'ayant pas de compte PHPfrance

23 nov. 2012, 23:08

Merci beaucoup cela fonctionne parfaitement !