エクスポートMYSQLテーブル用のPHPスクリプトがExcel形式になっていますが、テーブルをエクスポートした後に問題が発生します。 dbから取得するデータは、1行しか表示しません。MYSQLテーブルをExcelにエクスポート
この次のスクリプト:その横に
$dbc=mysql_connect(_SRV,_ACCID,_PWD) or die(_ERROR15.": ".mysql_error());
$db=mysql_select_db("qdbase",$dbc) or die(_ERROR17.": ".mysql_error());
$sQuery = "SELECT id, Line, Model,Lot_no,
COUNT(Serial_number) AS Qty,
SUM(S), SUM(A), SUM(B), SUM(C),
(SUM(S) + SUM(A) + SUM(B)*0.4 + SUM(C)*0.1)/COUNT(Serial_number) AS QP,
ROUND((SUM(S) + SUM(A) + SUM(B)*0.4 + SUM(C)*0.1)/COUNT(Serial_number)*1000,2) AS PPM
FROM `inspection_report`";
$rResult = mysql_query($sQuery) or die();
$count = mysql_num_fields($rResult);
// fetch table header
$header = '';
for ($i = 0; $i < $count; $i++){
$header .= mysql_field_name($rResult, $i)."\t";
}
// fetch data each row, store on tabular row data
while($row = mysql_fetch_row($rResult)){
$line = '';
foreach($row as $value){
if(!isset($value) || $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 = "\nno matching records found\n";
}
header("Content-type: application/vnd.ms-excel; name='excel'");
header("Content-Disposition: attachment; filename=exportfile.xls");
header("Pragma: no-cache");
header("Expires: 0");
// output data
echo $header."\n".$data;
?>
は、どのようにこのテーブルのためのいくつかの境界線を作るには?
私が何をしたい場合: "<テーブルのボーダー= 1>" エコー;それを置く正しい場所は、私のスクリプトがエラーになるのを防ぐことができない? – klox
yah ...私はこれのようにしたい。 – klox
+1問題を特定し、タブで区切られた値ファイルではなく、実際のExcelファイルを生成するためのPHPExcelを参照するためのものです。 –