Поиск по сайту:

Еретик — не тот, кто горит на костре, а тот, кто зажигает костер (В. Шекспир).

Экспорт данных MySQL в Excel в PHP4 мин для чтения

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
2 декабря 2020
Иногда вам может потребоваться экспорт в формат Excel из MySQL для локального использования. База данных или таблицы базы данных MySQL могут быть экспортированы в различные форматы файлов, такие как CSV, XML, SQL, Excel и т. д., С помощью клиента PHP, phpMyAdmin. Также можно экспортировать данные MySQL с помощью сценария PHP вместо экспорта данных вручную. Когда веб-приложению требуется, чтобы данные из базы данных MySQL хранились в формате Excel, для выполнения этой задачи лучше всего использовать скрипт PHP. В этой статье показано, как экспортировать данные MySQL с помощью сценария PHP.

 

Предпосылки

Перед экспортом любых данных MySQL выполните следующие задачи. Вы должны открыть клиент MySQL в терминале или клиент phpMyAdmin в браузере для выполнения следующих задач. Таблица с пятью записями будет создана в базе данных после выполнения следующих команд SQL.

 

A. Создайте базу данных MySQL

Выполните следующую команду SQL, чтобы создать базу данных с именем компании.

CREATE database `company`;

Б. Создайте таблицу

Выполните следующую команду SQL, чтобы создать таблицу с именем items.

CREATE TABLE `items` (
`id` int(11) AUTO_INCREMENT PRIMARY KEY,
`name` varchar(100) NOT NULL,
`type` varchar(20) NOT NULL,
`brand` varchar(50) NOT NULL,
`price` double(5,2) NOT NULL
) ENGINE=InnoDB;

C. Вставить данные в таблицу

INSERT INTO `items` (`name`,`type`,`brand`,`price`) VALUES
('Samsung A40s', 'Mobile','Sansung',300.00),
('Samsung 4523 40” inche', 'TV','Samsung',250.00),
('Walton Large Fridge', 'Fridge','Walton',400.00),
('LG 15” Monitor', 'Monitor','LG',100.00),
('DELL gaming Laptop', 'Laptop','Dell',450.00);

 

Если вы откроете таблицу элементов из клиента phpMyAdmin.

 

Экспорт данных MySQL в файл Excel

Здесь вы должны создать файл PHP с именем read_and_export.php, чтобы создать следующий сценарий, который считывает записи в таблице элементов и создает файл Excel с содержимым таблицы элементов. В сценарии объявляется объект подключения к базе данных для извлечения данных из таблицы базы данных. Затем определяется запрос выбора для чтения всех записей из таблицы элементов, которые хранятся в переменной с именем $ items. Эта переменная используется для отображения содержимого таблицы в табличной форме и создания файла Excel с содержимым таблицы на основе действий пользователя. Когда пользователь нажимает кнопку, которая позже будет создана в документе HTML для экспорта данных таблицы в формате Excel, функция isset() этого скрипта вернет значение «true». Чтобы создать файл Excel, имя файла определяется с расширением xsl. Необходимая информация заголовка передается с помощью функции header(). Затем переменная $heading используется для установки заголовка столбцов в файле Excel. Ключевые значения переменной $ items используются в качестве значений заголовка. Затем функция implode() используется для записи записей таблицы элементов в файл Excel.

Читать  Как установить PHP на Ubuntu 20.04

 

read_and_export.php

<?php
query($query);
$items = array();

// Сохраняем записи таблицы в массив
while( $row = $result->fetch_assoc() ) {
$items[] = $row;
}
// Проверяем, нажата ли кнопка экспорта
if(isset($_POST["export"])) {
// Определим имя файла с текущей датой
$fileName = "itemdata-".date('d-m-Y').".xls";

// Устанавливаем информацию заголовка для экспорта данных в формате Excel
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename='.$fileName);

// Устанавливаем переменную в false для заголовка
$heading = false;

// Добавляем данные таблицы MySQL в файл Excel
if(!empty($items)) {
foreach($items as $item) {
if(!$heading) {
echo implode("\t", array_keys($item)) . "\n";
$heading = true;
}
echo implode("\t", array_values($item)) . "\n";
}
}
exit();
}
?>

Создайте еще один файл PHP с именем index.php со следующим кодом для отображения записей в таблице элементов в браузере с помощью кнопки «Экспорт в Excel». Здесь файл read_and_export.php включен в начало сценария, чтобы установить соединение с базой данных, прочитать данные таблицы и создать файл Excel с данными таблицы, когда пользователь нажимает кнопку. Данные таблицы будут отображаться в табличном формате с использованием начальной загрузки и jQuery.

 

index.php

<? php
// Добавить скрипт для чтения данных MySQL и экспорта в Excel
include ( "read_and_export.php" ) ;
?>

<!DOCTYPE html>
<html>
<head>
<title>Экспорт данных MySQL в Excel с помощью PHP</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css">
<script
src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script
src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
</head>

<body>

<div class="container">
<center><br/><br/><h2
style='color:green'>Информация о таблице товаров</h2></center>
<div class="col-sm-12">
<div>
<form action="#" method="post">
<button type="submit" id="export" name="export"
value="Export to excel" class="btn btn-success">Экспорт в Excel</button>
</form>
</div>
</div>
<br/>
<table id="" class="table table-striped table-bordered">
<tr>
<th>ID</th>
<th>Имя</th>
<th>Тип</th>
<th>Марка</th>
<th>Цена</th>
</tr>
<tbody>
<?php foreach($items as $item) { ?>
<tr>
<td><?php echo $item ['id']; ?></td>
<td><?php echo $item ['name']; ?></td>
<td><?php echo $item ['type']; ?></td>
<td><?php echo $item ['brand']; ?></td>
<td>$<?php echo $item ['price']; ?></td>
</tr>
<?php } ?>
</tbody>
</table>
</div>

</body>
</html>

Выход

Здесь файлы read_and_export.php и index.php хранятся в папке var var/www/html/php/export. Запустите следующий URL-адрес в браузере, чтобы запустить index.php.

http://localhost/php/export

 

При нажатии кнопки «Экспорт в Excel» появится следующее диалоговое окно. Установите переключатель «Сохранить файл» и нажмите кнопку «ОК», чтобы создать и загрузить файл Excel с данными таблицы.
Когда вы щелкаете загруженный файл, чтобы открыть его, появляется следующее диалоговое окно, в котором вы можете выбрать необходимые параметры перед отображением файла. Данные в каждом столбце разделяются табуляцией (\t) во время создания файла Excel. Таким образом, здесь выбирается вкладка перед созданием файла.

Читать  Создание таблиц в MySQL с помощью Perl

 

Вывод

Файл Excel можно создать из таблицы MySQL, разделив значения столбцов определенным разделителем. Разделителем может быть запятая (,) табуляция (\t), точка с запятой (;), пробел ( ) или другие конкретные символы. В этой статье табуляция используется в качестве разделителя. Перед отображением содержимого файла Excel необходимо выбрать соответствующий символ в диалоговом окне «Импорт текста». Если в содержимом данных таблицы MySQL используются одинарные или двойные кавычки, то эти данные не будут сохранены в файле Excel. Я надеюсь, что это руководство помогло вам узнать, как экспортировать данные таблицы MySQL в файл Excel.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Читайте также

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close