HTML 테이블 데이터를 다양한 형식으로 변환 할 수있는 PHP 스크립트가 있습니까?
-
21-08-2019 - |
문제
PHP를 사용하여 MySQL 데이터 또는 정적 테이블 데이터를 CSV, Excel, JSON, MySQL 등으로 변환 할 수 있지만 PDF 및/또는 JPG/PNG와 같은 다른 형식/스타일 형식으로 테이블 데이터를 변환 할 수있는 유용한 변환 스크립트 또는 도구가 있습니다. PHP GD 라이브러리 또는 기타 사용?
해결책
나는 사용했다 이것 HTML 테이블을 PDF로 바꾸기 전에. MySQL 쿼리에서 테이블을 생성했습니다.
다른 팁
Excel로 내보내기 위해 다음 코드를 사용합니다.
<?php
/* Define our Database and Table Info */
$username="";
$password="";
$database="";
$table="";
mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$select = "SELECT * FROM $table";
$export = mysql_query($select);
$fields = mysql_num_fields($export);
for ($i = 0; $i < $fields; $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";
}
header("Content-type: application/x-msdownload");
header("Content-Disposition: attachment; filename=mailinglist.xls");
header("Pragma: no-cache");
header("Expires: 0");
print "$header\n$data";
?>
이제 이것을 포함시키는 방법에주의하십시오. 헤더를 사용하여 파일 정보를 보내서 다운로드를 강요합니다.이 작업을 수행 함으로써이 헤더가 전송되기 전에 어디서나 공백을 가질 수 없습니다. 그렇지 않으면 오류가 발생할 수 있습니다. 나는 보통이 링크를 새로운 창으로 열어서 어떤 일이 발생하지 않도록합니다 ... 다시 이것은 크게 확장 될 수있는 매우 기본적인 스크립트 일뿐입니다. 도움이 되었기를 바랍니다!
<?php
/ Define our Database and Table Info /
$username="";
$password="";
$database="";
$table="";
mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$select = "SELECT * FROM $table";
$export = mysql_query($select);
$fields = mysql_num_fields($export);
for ($i = 0; $i < $fields; $i++) {
$header .= mysql_field_name($export, $i) . ",";
}
while($row = mysql_fetch_row($export)) {
$line = '';
foreach($row as $value) {
if ((!isset($value)) OR ($value == "")) {
$value = ",";
} else {
$value = str_replace('"', '""', $value);
$value = '"' . $value . '"' . ",";
}
$line .= $value;
}
$data .= trim($line)."n";
}
$data = str_replace("r","",$data);
if ($data == "") {
$data = "n(0) Records Found!n";
}
header("Content-type: application/x-msdownload");
header("Content-Disposition: attachment; filename=mailinglist.xls");
header("Pragma: no-cache");
header("Expires: 0");
print "$headern$data";
?>
제휴하지 않습니다 StackOverflow