MySql to Word (HTML)

Thomas_Jung

Erfahrenes Mitglied
Hallo

Zur Zeit Exportiere ich meine Daten mit folgendem Code.
Das klappt auch mit 1000 Datensätze gut.
Nun möchte ich aber 10.000 Datensätze Exportieren das mach Word 2003 nicht mehr mit.
Ich weiss das man mit Excel ca 65.000 Datensätze Exportieren kann.
Ich benötige aber eine formatierte Ausgabe (align="top" align="'.$center.'" style="width: )

Kann Word nicht mehr?
Gibt es noch einen anderen Weg die Daten zu Exportieren?

Gruß Thomas

PHP:
<?php
	header("Content-Type: application/msword");
	header("Content-Disposition: attachment; filename=liste.doc");
	header("Pragma: no-cache");
	header("Expires: 0");
	echo '<table border="0" style="width:98%;border-collapse:separate;border: solid 1px #E5E5E5;" cellspacing="1" cellpadding="3" align="left">';
	echo '<tr>';
	for ($i = 0; $i < mysql_num_fields($result); $i++){
        if(mysql_field_name($result,$i) == 'AFID'){ $lang = 7; $center = 'center';}
        if(mysql_field_name($result,$i) == 'Abteilung'){ $lang = 18; $center = 'left';}
        if(mysql_field_name($result,$i) == 'Bezeichnung'){ $lang = 55; $center = 'left';}
        if(mysql_field_name($result,$i) == 'Einlagerung'){ $lang = 9; $center = 'center';}
        if(mysql_field_name($result,$i) == 'Vernichtung'){ $lang = 9; $center = 'center';}
	echo '<td align="top" align="'.$center.'" style="width:'.$lang.'%;" NoWrap="NoWrap">';
	echo mysql_field_name($result,$i);
	echo '</td>';
	}
	echo '</tr>';
	echo '<tr>';
        $anzehl_felfer = mysql_num_fields($result);
        $r=0;
	while($row = mysql_fetch_row($result)){
	$insert = "";
	for($j=0; $j<mysql_num_fields($result);$j++){
	if(!isset($row[$j])) {  $insert = "NULL"; }
        elseif ($row[$j] != ""){$insert = "$row[$j]"; }
        else {			$insert = ""; }
	if($j==3 or $j==4){$insert = preg_replace('/([0-9]{4})\-([0-9]{2})\-([0-9]{2})/', '\3.\2.\1', $schema_insert);}
        if($j==0){ $lang = 7; $center = 'center';}
        if($j==1){ $lang = 18; $center = 'left';}
        if($j==2){ $lang = 55; $center = 'left';}
        if($j==3){ $lang = 9; $center = 'center';}
        if($j==4){ $lang = 9; $center = 'center';}
	echo '<td align="top" align="'.$center.'" style="width:'.$lang.'px;" NoWrap="NoWrap">';
	echo $insert;
	echo '</td>';
	$r++;
	if($anzehl_felfer == $r){ echo '</tr>';   echo '<tr>'; $r = 0; }
       	}
	}
echo '<td colspan="5">'; echo 'Ende'; echo '</td>'; echo '</tr>';
echo '</table>';
?>
 
Hallo,

ich würde vorschlagen das gleich mit dem Officepaket durekt aus der DB zu ziehen. soweit ich das noch im Kopf habe kann man einen ODBC - Treiber installieren und dann direkt Queries an MySql absenden.

Wenn das nicht geht würde ich das allerdings in Exel importieren da kann man dann die Formatierung über ein Macro laufen lassen.


Gruß

katosan
 
Zurück