Я использую веб-таблицу Ajax для отображения данных, отображаемых в базе данных / таблице. Когда я экспортирую файл в поля Excel Excel после определенной длины, вы увидите xxE + XX. Так, например, если у меня есть поле со значением 123456789 при экспорте, я получаю 12.34E + 9.
Есть ли способ обойти это?
мой код выглядит следующим образом
else if(isset($_GET['export'])) { session_start(); ob_start(); $this->mysqlConnect(); header("Content-type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=report.xls"); header("Pragma: no-cache"); header("Expires: 0"); $select = "SELECT * FROM customers"; $export = mysql_query($select); $count = mysql_num_fields($export); for ($i = 0; $i < $count; $i++) { $header .= mysql_field_name($export, $i)."\t"; } while($row = mysql_fetch_row($export)) { $line = ''; foreach($row as $value) { if ((!isset($value)) OR ($value == "")) { $value = "\t"; } else { $value = str_replace('"', '""', $value); $value = '"' . $value . '"' . "\t"; } $line .= $value; } $data .= trim($line)."\n"; } $data = str_replace("\r", "", $data); if ($data == "") { $data = "\n(0) Records Found!\n"; } print "$header\n$data"; exit();
Вся помощь и отзывы очень приветствуются!
EDIT phpMyAdmin имеет ту же проблему при выборе формата «csv» или «excel». Но при экспорте в MS-Excel 2000 он решает проблему. Кто-нибудь знает, какая разница в экспорте?