Hallo PHP-Coder,
seit einigen Wochen sitze ich an einer Möglichkeit eine SQL-Tabelle in Excel zu öffnen oder als CSV-Datei speichern zu lassen.
Ich hatte auch schon mehrfach gepostet und bekam immer eine Super Unterstützung - DANKE !
Jedoch blieb der Erfolg, trotz zeilreicher Hilfe aus,
nun habe ich es fast geschaft, zumindest kann ich die Tabelle nun in Excle öffnen, jedoch würde ich gerne noch eine Möglichkeit einbauen um nur die Daten vom letzten Monat anzeigen zu lassen.
Hier das Script :
Link
nun habe ich es folgender maßen verändert, jedoch bekomme ich einen Parse-Error in der Zeile nach der letzten.
Link
Für eine Hilfestellung wäre ich dankbar :-)
Gruß Manuela
seit einigen Wochen sitze ich an einer Möglichkeit eine SQL-Tabelle in Excel zu öffnen oder als CSV-Datei speichern zu lassen.
Ich hatte auch schon mehrfach gepostet und bekam immer eine Super Unterstützung - DANKE !
Jedoch blieb der Erfolg, trotz zeilreicher Hilfe aus,
nun habe ich es fast geschaft, zumindest kann ich die Tabelle nun in Excle öffnen, jedoch würde ich gerne noch eine Möglichkeit einbauen um nur die Daten vom letzten Monat anzeigen zu lassen.
Hier das Script :
PHP-Code:
<?php
Header("Content-Type: application/vnd.ms-excel");
$db_link = mysql_connect("localhost", "$benutzer", "$passwort")
or die("Keine Verbindung möglich!");
mysql_select_db("$DB")
or die("Auswahl der Datenbank fehlgeschlagen");
$query_text = "SELECT * FROM pphl_39585_logs";
$result = mysql_query($query_text, $db_link);
$fieldcounts = mysql_num_fields($result);
for($i = 0; $i < $fieldcounts; $i++) {
$fieldtype = mysql_fetch_field($result, $i);
if ($i < ($fieldcounts-1)) echo "$fieldtype->name [$fieldtype->type]\t";
else echo "$fieldtype->name [$fieldtype->type]\n";
}
$myrow = mysql_fetch_array($result);
do {
for($i = 0; $i < $fieldcounts; $i++) {
$fieldname = mysql_field_name($result, $i);
if ($i < ($fieldcounts-1)) echo $myrow[$fieldname] . "\t";
else echo $myrow[$fieldname] . "\n";
}
} while ($myrow = mysql_fetch_array($result));
?>
nun habe ich es folgender maßen verändert, jedoch bekomme ich einen Parse-Error in der Zeile nach der letzten.
PHP-Code:
<?php
Header("Content-Type: application/vnd.ms-excel");
$db_link = mysql_connect("localhost", "$benutzer", "$passwort")
or die("Keine Verbindung möglich!");
mysql_select_db("$DB")
or die("Auswahl der Datenbank fehlgeschlagen");
function csv_export($id) {
$monat = date("m"); $jahr = date("Y");
$monat = $monat - 1;
if ($monat == 0) {
$monat = 12;
$jahr = $jahr - 1;
}
switch ($monat) {
case 1:
$lastday = 31;
break;
case 2:
$lastday = 28;// Schaltjahre beachten...
break;
case 4:
case 6:
case 9:
case 11:
$lastday = 30;
break;
default:
$lastday = 31;
break;
case 3:
$lastday = 31;
break;
case 4:
$lastday = 30;
break;
case 5:
$lastday = 31;
break;
case 6:
$lastday = 30;
break;
case 7:
$lastday = 31;
break;
case 8:
$lastday = 31;
break;
case 9:
$lastday = 30;
break;
case 10:
$lastday = 31;
break;
case 11:
$lastday = 30;
break;
case 12:
$lastday = 31;
break;
default:
$lastday = 30;
}
$first_of_month = mktime (0,0,0,$monat,1,$jahr);
$last_of_month = mktime (23,59,59,$monat,$lastday,$jahr);
if ($monat < 10) $monat = "0".$monat;
$query_text = "SELECT * FROM pphl_39585_logs WHERE time >= $first_of_month AND time <= $last_of_month ";
$result = mysql_query($query_text, $db_link);
$fieldcounts = mysql_num_fields($result);
for($i = 0; $i < $fieldcounts; $i++) {
$fieldtype = mysql_fetch_field($result, $i);
if ($i < ($fieldcounts-1)) echo "$fieldtype->name [$fieldtype->type]\t";
else echo "$fieldtype->name [$fieldtype->type]\n";
}
$myrow = mysql_fetch_array($result);
do {
for($i = 0; $i < $fieldcounts; $i++) {
$fieldname = mysql_field_name($result, $i);
if ($i < ($fieldcounts-1)) echo $myrow[$fieldname] . "\t";
else echo $myrow[$fieldname] . "\n";
}
} while ($myrow = mysql_fetch_array($result));
?>
Für eine Hilfestellung wäre ich dankbar :-)
Gruß Manuela
Kommentar