Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie exportiere ich MySQL-Daten mit PHP in separate Excel-Zellen?

Barbara Streisand
Freigeben: 2024-11-25 10:45:14
Original
518 Leute haben es durchsucht

How to Export MySQL Data to Separate Excel Cells using PHP?

Abrufen von MySQL-Daten in separaten Excel-Zellen mit PHP

Ihr ursprüngliches PHP-Skript kombiniert alle Textwerte in einer einzigen Excel-Zelle, was im Widerspruch zu Ihrem steht gewünschte Ausgabe einzelner Zeilen. Um dieses Problem zu beheben, ändern wir den Code, um Ihre Daten ordnungsgemäß in verschiedene Zellen zu formatieren.

Der aktualisierte Code unten enthält die folgenden Änderungen:

  1. Getrennte Zeilen: mysql_fetch_row() wird verwendet, um Daten Zeile für Zeile abzurufen.
  2. Formatiert Kopfzeilen: Die Kopfzeile wird mit MySQL-Feldnamen gefüllt.
  3. Formatierte Datenzeilen: Die Datenzeilen werden analysiert, durch Tabulatoren getrennt und aus Gründen der Excel-Kompatibilität in Anführungszeichen gesetzt.
  4. Excel-Ausgabe: Die formatierten Daten werden in einer Excel-kompatiblen Datei (.xls) wiedergegeben. Datei.
<?php
// MySQL connection details
$DB_Server = "localhost";
$DB_Username = "username";
$DB_Password = "password";
$DB_DBName = "databasename";
$DB_TBLName = "tablename";

// Define Excel file name
$filename = "exportfile.xls";

// Connect to MySQL
$Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password) or die("Couldn't connect to MySQL: " . mysql_error());

// Select database
$Db = @mysql_select_db($DB_DBName, $Connect) or die("Couldn't select database: " . mysql_error());

// Execute query
$sql = "SELECT * FROM $DB_TBLName";
$result = @mysql_query($sql, $Connect) or die("Couldn't execute query: " . mysql_error());

// Set CSV separator (tabs)
$sep = "\t";

// Print column names as headers
for ($i = 0; $i < mysql_num_fields($result); $i++) {
    echo mysql_field_name($result, $i) . $sep;
}
echo "\n";

// Print data rows
while ($row = mysql_fetch_row($result)) {
    $line = '';

    for ($j = 0; $j < mysql_num_fields($result); $j++) {
        if (empty($row[$j])) {
            $line .= "NULL" . $sep;
        } else {
            $line .= '"' . str_replace('"', '""', $row[$j]) . '"' . $sep;
        }
    }

    $line = trim($line);
    echo $line . "\n";
}

// Close MySQL connection
mysql_close($Connect);

// Set file headers for Excel
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$filename");
header("Pragma: no-cache");
header("Expires: 0");

// Echo data to Excel file
echo $line . "\n";
Nach dem Login kopieren

Dieser aktualisierte Code generiert eine Excel-Datei mit Daten, die in einzelne Zellen unterteilt sind und Ihre Anforderungen erfüllen.

Das obige ist der detaillierte Inhalt vonWie exportiere ich MySQL-Daten mit PHP in separate Excel-Zellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage