Probleme bei Daten aus mysql nach excel exportieren (nicht über phpmyadmin)
Hallo Gemeinde,
hier erstmal der Code:
Nun mein Problem.
Ich habe in einer Spalte sehr lange Zeichenfolgen, diese können auch nur aus Nummern bestehen.
Wenn ich nun das Ergebnis aus der Mysql-Datenbank nach excel portiere,
gibt mir excel die Zeichenkette (die nur aus Nummern besteht) als exponentialzahl aus.
Kann ich dies Verhindern?
Bei phpmysqladmin funktioniert das ja auch dort werden die zeichenfolgen richtig dargestellt.
Kann mir da jemand helfen
Danke im vorraus !!
-> Wieso kann ich nicht auf die Antwort antworten? Wollte Auf die Antwort Antworten aber geht nicht.
Dann halt so:
Es ist mir klar das ich von PHP nicht Excel manipulieren kann (schonmal nicht mit einfachen PHP mitteln).
Bei Mysqladmin funktioniert es ... wie machen die das?
hier erstmal der Code:
$erg = $db->query_daten($sql);
$tsv = array();
foreach($erg as $row){
$tsv = implode("\t", $row);
}
$tsv = implode("\r\n", $tsv);
$fileName = 'mysql-to-excel.xls';
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition:inline; filename=$fileName");
echo $tsv;
Nun mein Problem.
Ich habe in einer Spalte sehr lange Zeichenfolgen, diese können auch nur aus Nummern bestehen.
Wenn ich nun das Ergebnis aus der Mysql-Datenbank nach excel portiere,
gibt mir excel die Zeichenkette (die nur aus Nummern besteht) als exponentialzahl aus.
Kann ich dies Verhindern?
Bei phpmysqladmin funktioniert das ja auch dort werden die zeichenfolgen richtig dargestellt.
Kann mir da jemand helfen
Danke im vorraus !!
-> Wieso kann ich nicht auf die Antwort antworten? Wollte Auf die Antwort Antworten aber geht nicht.
Dann halt so:
Es ist mir klar das ich von PHP nicht Excel manipulieren kann (schonmal nicht mit einfachen PHP mitteln).
Bei Mysqladmin funktioniert es ... wie machen die das?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 125659
Url: https://administrator.de/contentid/125659
Ausgedruckt am: 14.11.2024 um 15:11 Uhr
2 Kommentare
Neuester Kommentar
Hi hundertwasser,
du kannst Excel zwar nicht manipulieren, aber du kannst eine CSV-Datei mit
MySQL formatieren und ausgeben:
Die Datei nicht mit Excel öffnen, sondern importieren. In der Regel öffnet sich dann ein
Dialog, wo du die mit MySQL festgelegten Trennzeichen angeben und Zellen entsprechend
formatieren kannst.
Stichworte für Google: excel csv importieren
Gruß
Günni
PS.: In Excel Zellen nachträglich als Text zu formatieren bringt nix: da werden die
Exponentialzahlen lediglich links ausgerichtet.
du kannst Excel zwar nicht manipulieren, aber du kannst eine CSV-Datei mit
MySQL formatieren und ausgeben:
<?php
/*
Feldnamen auswählen(oder alle mit *) und Verzeichnispfad/Datei angeben.
Das Verzeichnis muß von jedem beschreibbar sein dürfen.
Alternativ: $query="select * into outfile 'tab2.csv'" . . . ohne Verzeichnispfad.
Dann wird die Datei in das Datenbankverzeichnis geschrieben
*/
$query="select * into outfile '/home/tmp/tab2.csv'"
/* Trennzeichen für die Datenfelder angeben. */
." fields terminated by ';'"
/* Festlegen, dass Felder mit " eingeschlossen werden */
." enclosed by '\"'"
/* Datenquelle angeben */
." from tabelle2";
mysql_query($query) or die(mysql_error());
?>
Die Datei nicht mit Excel öffnen, sondern importieren. In der Regel öffnet sich dann ein
Dialog, wo du die mit MySQL festgelegten Trennzeichen angeben und Zellen entsprechend
formatieren kannst.
Stichworte für Google: excel csv importieren
Gruß
Günni
PS.: In Excel Zellen nachträglich als Text zu formatieren bringt nix: da werden die
Exponentialzahlen lediglich links ausgerichtet.