Avatar billede -zonic- Nybegynder
27. august 2009 - 15:57 Der er 7 kommentarer og
1 løsning

php til excel vil ikke vise danske tegn?

Hej..

jeg har et problem med at eksportere data til excel - i MS Excel 2007 (PC) vises koden korrekt, men på MS MAC:excel 2008 viser den danske tegn forkert...

her er koden:

<?
if($_GET['xls']) {
header ("Content-type: application/x-msexcel; charset=iso-8859-1");
header("Content-Disposition: attachment; filename=extraction.xls");
} else {
header('Content-Type: text/html; charset=iso-8859-1');
}
header("Pragma: no-cache");
header("Expires: 0");
//$data = str_replace("æ","&aelig;",$data);
echo $data;
?>

I kan se eksemplet her:

http://www.business-performance-institute.dk/RS/excel.php

og få excel filen her :

http://www.business-performance-institute.dk/RS/excel.php?xls=1

nogen der kan sige mig hvad jeg kan gøre ved det?

På forhånd tak!!
Avatar billede nissen2630 Novice
27. august 2009 - 16:03 #1
Prøv:
header ("Content-type: application/x-msexcel; charset=UTF-8");

Skal lige sige at jeg ser http://www.business-performance-institute.dk/RS/excel.php ganske fint med æøå.
Avatar billede olebole Juniormester
27. august 2009 - 21:33 #2
<ole>

Sålænge du ikke skriver ud i et validt HTML dokument, kan du ikke regne med noget somhelst omkring tegnsæt i en browser  ;o)

/mvh
</bole>
Avatar billede -zonic- Nybegynder
27. august 2009 - 22:19 #3
Olebole -> meningen er jo ikke at jeg skal skrive ud i html?? jeg skriver det som ganske uformatteret tabeldata...

nissen-> ja, det fungerer netop fint i browseren, men til excel til mac går den galt.. :-(
Avatar billede olebole Juniormester
27. august 2009 - 22:29 #4
Jamen, du kan ikke teste noget somhelst ikke-HTML i en browser.

Hvad gemmer du filen som? ANSI eller utf-8?
Avatar billede -zonic- Nybegynder
27. august 2009 - 23:11 #5
godt spm :-)


mit script er bygget ud fra det denne datastruktur :-)


<?php
$line1="ID\tProduct\tColor\tSales\t";
$line2="1\tPrinter\tGrey\t13\t";
$line3="2\tCD\tBlue\t15\t";
$line4="3\tDVD\tRed\t7\t";
$line5="4\tMonitor\tGreen\t4\t";
$line6="5\tTelephone\tBlack\t2\t";

$data="$line1\n$line2\n$line3\n$line4\n$line5\n$line6\n";

header ("Content-type: application/x-msexcel; charset=iso-8859-1");
header("Content-Disposition: attachment; filename=extraction.xls");
header("Pragma: no-cache");
header("Expires: 0");
print "$header\n$data";
?>
Avatar billede -zonic- Nybegynder
28. august 2009 - 13:04 #6
vil du formattere det som normal html istedet olebole?


<table>
  <tr>
    <td>  tutteluuu </td>
  </tr>
</table> 

og så med charset i header?
Avatar billede -zonic- Nybegynder
31. august 2009 - 09:38 #7
ooooooooooooleeeeeeeeee? :-)
Avatar billede -zonic- Nybegynder
10. september 2009 - 17:01 #8
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester