PHP און MySQL: עקספּאָרט אַ אָנפֿרעג צו אַ טאַב דעלימיטעד אָדער קסוו טעקע

דעם אָפּרוטעג, איך געוואלט צו בויען אַ PHP בלאַט וואָס וואָלט באַקאַפּ קיין מיסקל אָנפֿרעג אָדער טיש אין אַ טאַב דעלימיטעד טעקע. רובֿ פון די ביישפילן אויף די נעץ האָבן שווער-קאָדעד שפאלטן.

אין מיין פאַל, איך געוואלט די שפאלטן צו זיין דינאַמיש, אַזוי איך האָבן צו ערשטער שלייף דורך אַלע די טיש פעלד נעמען צו בויען די כעדער רודערן מיט זייַל נעמען און דערנאָך שלייף דורך אַלע די רעקאָרדס פֿאַר די רוען דאַטן ראָוז. איך אויך שטעלן די כעדער אַזוי אַז דער בלעטערער וועט אָנהייבן די דאַונלאָודינג פון די טעקע אין די פילעטיפּע (טקסט) מיט די נאָמען פון די טעקע דאַטע און טימעסטאַמפּעד.

טאַב דעלימיטעד עקספּאָרט פֿון MySQL אין PHP

<?php
$today = date("YmdHi");
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"".$today."_Backup.txt\"");
$conn = new mysqli("hostname", "username", "password", "database_name"); // Replace with your database credentials

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$query = "SELECT * FROM `mytable` ORDER BY `myorder`";
$result = $conn->query($query);

if ($result->num_rows > 0) {
    $fields = $result->fetch_fields();
    
    // Prepare the header row
    $header = [];
    foreach ($fields as $field) {
        $header[] = $field->name;
    }
    $data = implode("\t", $header) . "\n";

    // Fetch and process the data rows
    while ($row = $result->fetch_assoc()) {
        $rowValues = [];
        foreach ($fields as $field) {
            $rowValues[] = $row[$field->name];
        }
        $data .= implode("\t", $rowValues) . "\n";
    }

    // Output the data
    echo $data;
} else {
    echo "No data found";
}

// Close the database connection
$conn->close();
?>

זאל ס גיין דורך די קאָד שריט דורך שריט מיט דערקלערונגען פֿאַר יעדער טייל:

<?php
// Get the current date and time in a specific format
$today = date("YmdHi");

// Set HTTP headers for file download
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"".$today."_Backup.txt\"");

// Create a MySQL database connection
$conn = new mysqli("hostname", "username", "password", "database_name"); // Replace with your database credentials

// Check if the database connection was successful
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
// Define the SQL query to select data from the `mytable` table
$query = "SELECT * FROM `mytable` ORDER BY `myorder`";

// Execute the SQL query
$result = $conn->query($query);

// Check if there are any rows returned
if ($result->num_rows > 0) {
    // Fetch the field (column) names
    $fields = $result->fetch_fields();

    // Prepare the header row for the export file
    $header = [];
    foreach ($fields as $field) {
        $header[] = $field->name;
    }
    $data = implode("\t", $header) . "\n";
    // Fetch and process the data rows
    while ($row = $result->fetch_assoc()) {
        $rowValues = [];
        foreach ($fields as $field) {
            $rowValues[] = $row[$field->name];
        }
        $data .= implode("\t", $rowValues) . "\n";
    }
    // Output the data to the browser
    echo $data;
} else {
    // If no data is found, display a message
    echo "No data found";
}

// Close the MySQL database connection
$conn->close();
?>

דער קאָד עפפיסיענטלי עקספּאָרץ דאַטן פון אַ MySQL דאַטאַבייס טיש אין אַ קוויטל-דעלימיטעד טעקסט טעקע און כאַנדאַלז פאַרשידן סינעריאָוז, אַזאַ ווי דייטאַבייס קשר ערראָרס און ליידיק רעזולטאַט שטעלט.

קאָממאַ-סעפּאַראַטעד וואַלועס עקספּאָרט פֿון MySQL אין PHP

איך קענען מאָדיפיצירן די קאָד צו אַרויספירן דאַטן ווי אַ קסוו טעקע. דאָ איז דער קאָד, דערהייַנטיקט פֿאַר CSV אַרויספירן:

<?php
// Get the current date and time in a specific format
$today = date("YmdHi");

// Set HTTP headers for file download
header("Content-type: text/csv");
header("Content-Disposition: attachment; filename=\"".$today."_Backup.csv\"");

// Create a MySQL database connection
$conn = new mysqli("hostname", "username", "password", "database_name"); // Replace with your database credentials

// Check if the database connection was successful
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// Define the SQL query to select data from the `mytable` table
$query = "SELECT * FROM `mytable` ORDER BY `myorder`";

// Execute the SQL query
$result = $conn->query($query);

// Check if there are any rows returned
if ($result->num_rows > 0) {
    // Prepare the output file handle for writing
    $output = fopen('php://output', 'w');

    // Fetch and process the data rows
    while ($row = $result->fetch_assoc()) {
        // Output each row as a CSV line
        fputcsv($output, $row);
    }

    // Close the output file handle
    fclose($output);
} else {
    // If no data is found, display a message
    echo "No data found";
}

// Close the MySQL database connection
$conn->close();
?>

אין דעם מאַדאַפייד קאָד:

דער קאָד וועט אַרויספירן די דאַטן פון די MySQL טיש ווי אַ קסוו טעקע, וואָס מאכט עס גרינג פֿאַר יוזערז צו עפֿענען און אַרבעטן מיט אין ספּרעדשיט אַפּלאַקיישאַנז ווי עקססעל. דו זאלסט נישט פאַרגעסן צו פאַרבייַטן די דאַטאַבייס קראַדענטשאַלז מיט דיין אייגענע.

אַרויסגאַנג רירעוודיק ווערסיע