2009-05-13 16 views

答えて

1

私はthisを使用してHTMLテーブルをPDFに変換しています。私はMySQLのクエリからテーブルを生成しました。 Excelにエクスポートするに

+0

これはhttp://code.google.com/p/dompdf/に移動したようですが、これに似ているが画像にはいくつかの例があります。私は暫定的に動作すると思う多くの "screenshot"ソフトウェアアプリがあります... –

+0

wkhtmltopdf – Strae

0

は、私は次のコードを使用します。

<?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"; 
?> 

は今、あなたはこれを含めどのように注意してください。ヘッダーを使用してファイル情報を送信してダウンロードを強制します。これを行うと、これらのヘッダーが送信される前に空白を入れることができません。そうしないと、エラーが発生する可能性があります。私はいつもこのリンクを開いて、何かが起きないようにする新しいウィンドウを開いています...これもまた非常に拡張可能なかなり基本的なスクリプトです。お役に立てれば!

+0

のために自分自身を手に入れてください - 私は実装を持っているcsv、xlsのコンバーターと組み合わせると便利かもしれません。 pdfやjpgを単純なドロップダウンや変数の出力に加えて、出力ファイルのフォーマットを決定するのが好きです。とにかく情報をありがとう。 –

+0

PDFまで私は通常、http://www.fpdf.org/(FPDF)のようなライブラリを使用することになります。これは、実装が非常に簡単で、使い方も簡単です。私は、フラッシュだけでなく、飛行中にJPEGを作成するためのスクリプトがあることを知っていますが、私はあまりにも多くを実験していません。 – stogdilla

0
<?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"; 
?> 
+1

答えを明確にするためにコードが行うことの説明を追加することができます –

関連する問題