¿Cómo exportar datos a un archivo CSV desde la base de datos usando XAMPP?

En este artículo, vamos a cargar los datos presentes en la base de datos (MySQL) en un archivo CSV. Muestre los datos en la base de datos y también exporte esos datos a un archivo CSV. Estamos utilizando la herramienta XAMPP para almacenar localmente en una base de datos.

XAMPP significa multiplataforma, Apache, MySQL, PHP y Perl. Es uno de los servidores locales simples y livianos para el desarrollo de sitios web.

Pasos:

  • Cree una base de datos y cree una tabla en la base de datos de su servidor XAMPP (MySQL).
  • Escribir PHP Script para acceder a esos datos
  • Verificar resultados

Escenario con CSV: Cree dos scripts PHP llamados index.php y export.php Coloque estos archivos en xampp/htdocs/folder/

index.php: Muestra las columnas junto con los datos usando mysqli_fetch_array. La función fetch_array() / mysqli_fetch_array() obtiene una fila de resultados como una array asociativa, una array numérica o ambas.

Pasos de ejecución:

1. Abra el servidor XAMPP e inicie el servidor Apache y MySQL

2. Crea una base de datos con el nombre “article_geeksdata”

3. Cree una tabla dentro de esta base de datos llamada «geeksdata» e inserte datos

Abra el Bloc de notas y escriba el siguiente código. Guarde este archivo como index.php

PHP

<?php 
 
// Connect syntax
 $connect = mysqli_connect("localhost",
    "root", "", "article_geeksdata"); 
 
// Display data from geeksdata table
 $query ="SELECT * FROM geeksdata"; 
 
// Storing it in result variable
 $result = mysqli_query($connect, $query); 
 ?>
 
// HTML code to display our data
// present in table
<!DOCTYPE html>
<html>
 
<head>
    <script src=
"https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js">
    </script>
     
    <link rel="stylesheet" href=
"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
     
    <script src=
"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js">
    </script>
</head>
 
<body>
    <div class="container" style="width:900px;">
        <h2 align="center">Geeks for Geeks</h2>
 
        <h3 align="center">
            Export data into CSV from Data Base
        </h3>
        <br />
         
        <!-- After clicking on submit button
            export.php code is revoked -->
        <form method="post" action="export.php"
            align="center">
            <input type="submit" name="export"
                value="CSV Export"
                class="btn btn-success" />
        </form>
        <br />
 
        <!-- Code for table because our data is
            displayed in tabular format -->
        <div class="table-responsive" id="employee_table">
            <table class="table table-bordered">
                <tr>
                    <th width="5%">UserID</th>
 
                    <th width="35%">Name</th>
                    <th width="10%">Article</th>
                    <th width="20%">Article Type</th>
                    <th width="5%">Published Date</th>
                </tr>
                <?php
                 
                // Fetching all data one by one using
                // while loop
                while($row = mysqli_fetch_array($result)) { 
                ?>
                 
                <!-- taking attributes and storing
                    in table cells -->
                <tr>
                    <!-- column names in table  -->
                    <td><?php echo $row["user_id"]; ?></td>
                    <td><?php echo $row["name"]; ?></td>
                    <td><?php echo $row["article"]; ?></td>
                    <td><?php echo $row["article_type"]; ?></td>
                    <td><?php echo $row["published_date"]; ?></td>
                </tr>
                <?php      
                }?>
            </table>
            <!-- Closing table tag  -->
        </div>
        <!-- Closing div tag -->
    </div>
</body>
 
</html>

Salida de esta página web

Ahora abra otra página en el bloc de notas y escriba el siguiente código. Guarde este archivo como export.php

PHP

<?php 
 
// Checking data by post method
if(isset($_POST["export"])) { 
 
    // Connect to our data base
    $connect = mysqli_connect("localhost",
        "root", "", "article_geeksdata"); 
 
    // Accept csv or text files
    header('Content-Type: text/csv; charset=utf-8'); 
 
    // Download csv file as geeksdata.csv
    header('Content-Disposition: attachment;
        filename=geeksdata.csv'); 
 
    // Storing data
    $output = fopen("php://output", "w"); 
 
    // Placing data using fputcsv
    fputcsv($output, array('User_ID','Name',
    'Article_Name', 'Article_Type', 'Data_published')); 
 
    // SQL query to fetch data from our table
    $query = "SELECT * from geeksdata"; 
 
    // Result
    $result = mysqli_query($connect, $query); 
 
    while($row = mysqli_fetch_assoc($result)) { 
 
        // Fetching all rows of data one by one
        fputcsv($output, $row); 
    }
 
    // Closing tag
    fclose($output); 
} 
?>

Producción:

VÍDEO DE EJECUCIÓN

Publicación traducida automáticamente

Artículo escrito por sravankumar8128 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *