私のPHPコードでは、PDFドキュメントのロードに失敗しました与えるは、私はPHPに新しいですし、コードの機能の下に実装しようとし
機能: 私は1つのダウンロードボタンがあり、クリックすると私は私のPDFファイルをダウンロードすることができるはずですhtdocs - > xxfilename - > abc.pdfの下に保存されたファイル。
コード: 私はコードの下に使用しています私のxyz.phpのWebページで
<?php
$title = "Learning";
$content = '
<h3> Intro</h3>
<p>
Introduction goes here
</p>
<form action = "xyz.php" method = "post" name = "downloadform">
<input type="submit" value="Download" name="dwnld_file"/>
</form>
';
if (isset($_POST['dwnld_file'])) {
mysql_connect("localhost", "root", "");
mysql_select_db("PQR");
$res = mysql_query("Select * from tab1");
while ($row = mysql_fetch_array($res)) {
$file = '$row["col2"]';
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="' . $row["col2"] . '"');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
header('Content-Length:' . filesize($file));
readfile($file);
}
}
include 'Template.php';
?>
エラー: 私のPDFファイルをダウンロードなっているが、それを開くと、それは「PDF文書を読み込むことができませんでした」と言う
私が間違っているところを助けてください。
***編集****私は別のアプローチを試してみました、私のファイルをダウンロードしているが、まだそれは
私の他のアプローチのコードが下にある「PDF文書を読み込むことができませんでした」という
<form action = "xyz.php" method = "post" name = "downloadform">
<input type="submit" value="Download " name="dwnld_file"/>
</form>
<?php
if (isset($_POST['dwnld_file'])) {
mysql_connect("localhost", "root", "");
mysql_select_db("test");
$res = mysql_query("Select * from tab1");
while ($row = mysql_fetch_array($res)) {
$file = $row["col1"];
echo $file;
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="' .$file. '"');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
header('Content-Length:' . filesize($file));
readfile('myfile/'.$file);
}
}
?>
私が何か悪いことをしているかどうか教えてください。
これは非常に醜い実装方法です。 – Amit
ここに似たような質問のための受け入れられた答えがあるように見えるhttp://stackoverflow.com/questions/1004478/read-pdf-files-with-php –
@Amit:あなたはそれを行うよりよい方法を提案できますか? 私のすべてのページに共通のテンプレートがあります。 PDFファイルをダウンロードするにはDownload PDFボタンを表示する必要があります。 –