«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как экспортировать данные MySQL в Excel с отдельными ячейками в PHP?

Как экспортировать данные MySQL в Excel с отдельными ячейками в PHP?

Опубликовано 7 ноября 2024 г.
Просматривать:588

How to Export MySQL Data to Excel with Separate Cells in PHP?

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

Вы столкнулись с проблемой при экспорте данных MySQL в Excel, где весь текст отображается в одной ячейке вместо отдельных ячеек для каждого значения строки. Целью этой статьи является решение этой проблемы путем обращения к каждой строке вашего кода и рекомендации соответствующих изменений.

Строка 12: $count = mysql_num_fields($result);

Эта строка подсчитывает количество столбцов в наборе результатов и присваивает его переменной $count.

Строка 14: $header .= mysql_field_name($result, $i). "\t";

Эта строка добавляет имена столбцов к переменной $header, разделенные символами табуляции.

Строка 24: if(!isset($value) || $value == ""){ $value = "\t"; }

В этой строке, если значение ячейки пустое или неопределенное, оно заменяется табуляцией. Это гарантирует, что в каждой ячейке будет хотя бы пробел.

Строка 28: $data .= Trim($line)."\n";

Здесь обрезанная строка данных добавляется к переменной $data, разделенной символами новой строки.

Строка 38: header("Content-Disposition: Attachment; filename=exportfile.xls");

В этой строке заголовок настроен так, чтобы браузер загружал файл как документ Excel с именем Exportfile.xls.

Строка 52: $result = @mysql_query( $sql,$Connect) или die("Не удалось выполнить запрос:
". mysql_error(). "
" . mysql_errno());

Эта строка выполняет SQL-запрос и обрабатывает любые потенциальные ошибки.

Строка 63: header("Pragma: no-cache"); и header("Expires: 0");

Эти заголовки отключают кэширование, чтобы гарантировать загрузку последних данных при каждом запросе.

Строка 92: print Trim( $schema_insert);

В этой строке распечатываются обрезанные данные.

Расширенный код:

Вот расширенная версия вашего кода это должно решить проблему экспорта данных в отдельные ячейки Excel:

$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 
Заявление о выпуске Эта статья перепечатана по адресу: 1729203864. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3