Exportieren von MySQL-Daten nach Excel in PHP mit separaten Zellen
Beim Exportieren von MySQL-Daten nach Excel tritt ein Problem auf, in dem der gesamte Text enthalten ist wird in einer einzelnen Zelle statt in separaten Zellen für jeden Zeilenwert angezeigt. Ziel dieses Artikels ist es, eine Lösung für dieses Problem bereitzustellen, indem jede Zeile Ihres Codes behandelt und entsprechende Änderungen empfohlen werden.
Zeile 12: $count = mysql_num_fields($result);
Diese Zeile zählt die Anzahl der Spalten im Ergebnissatz und weist sie der Variablen $count zu.
Zeile 14: $header .= mysql_field_name($result, $i). "\t";
Diese Zeile hängt die Spaltennamen an die $header-Variable an, getrennt durch Tabulatoren.
Zeile 24: if(!isset($value) ||. $value == ""){ $value = "\t"; }
Wenn der Zellenwert in dieser Zeile leer oder undefiniert ist, wird er durch einen Tabulator ersetzt. Dadurch wird sichergestellt, dass jede Zelle mindestens ein Leerzeichen hat.
Zeile 28: $data .= trim($line)."\n";
Hier die Die gekürzte Datenzeile wird durch Zeilenumbrüche getrennt an die Variable $data angehängt.
Zeile 38: header("Content-Disposition: attachment; filename=exportfile.xls");
In dieser Zeile wird der Header so eingestellt, dass der Browser die Datei als Excel-Dokument mit dem Namen exportfile.xls herunterlädt.
Zeile 52: $result = @mysql_query( $sql,$Connect) oder die("Abfrage konnte nicht ausgeführt werden:
" . mysql_error(). "
" . mysql_errno());
Diese Zeile führt die SQL-Abfrage aus und behandelt alle potenziellen Fehler.
Zeile 63: header("Pragma: no-cache"); and header("Expires: 0");
Diese Header deaktivieren das Caching, um sicherzustellen, dass bei jeder Anfrage die neuesten Daten heruntergeladen werden.
Zeile 92: print trim( $schema_insert);
In dieser Zeile werden die gekürzten Daten ausgedruckt.
Erweiterter Code:
Hier ist eine erweiterte Version Ihres Codes Dies sollte das Problem des Exportierens von Daten in separate Zellen in Excel lösen:
$DB_Server = "localhost";
$DB_Username = "username";
$DB_Password = "password";
$DB_DBName = "databasename";
$DB_TBLName = "tablename";
$filename = "excelfilename";
$sql = "Select * from $DB_TBLName";
$Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password) or die("Couldn't connect to MySQL:<br>" . mysql_error() . "<br>" . mysql_errno());
$Db = @mysql_select_db($DB_DBName, $Connect) or die("Couldn't select database:<br>" . mysql_error(). "<br>" . mysql_errno());
$result = @mysql_query($sql,$Connect) or die("Couldn't execute query:<br>" . mysql_error(). "<br>" . mysql_errno());
header("Content-Type: application/xls");
header("Content-Disposition: attachment; filename=$filename.xls");
header("Pragma: no-cache");
header("Expires: 0");
$count = mysql_num_fields($result);
for ($i = 0; $i
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3