У меня есть следующий код
function generate_pdf() {
$fdf_data_strings = $this->get_hash_for_pdf();
#$fdf_data_names = array('49a' => "yes");
$fdf_data_names = array();
$fields_hidden = array();
$fields_readonly = array();
$hud_pdf = ABSPATH.'../pdf/HUD3.pdf';
$fdf= forge_fdf( '',
$fdf_data_strings,
$fdf_data_names,
$fields_hidden,
$fields_readonly );
/* echo "<pre>";
print_r($fdf);
echo "</pre>";
die('');
*/
$fdf_fn= tempnam( '.', 'fdf' );
$fp= fopen( $fdf_fn, 'w' );
if( $fp ) {
fwrite( $fp, $fdf );
//$data=fread( $fp, $fdf );
// echo $data;
fclose( $fp );
header( 'Content-type: application/pdf' );
header( 'Content-disposition: attachment; filename=settlement.pdf' ); // prompt to save to disk
passthru( 'pdftk HUD3.pdf fill_form '. $fdf_fn.' output - flatten');
unlink( $fdf_fn ); // delete temp file
}
else { // error
echo 'Error: unable to open temp file for writing fdf data: '. $fdf_fn;
}
}
}
что-то не так?
проблема в том, что я установил pdftk
бег whereis pdftk
дает мне '/usr/local/bin/pdftk'
физически проверил место, pdftk есть в указанном месте ..
используя терминал, если я запускаю pdftk --version
или любую другую команду, она запускается
если я использую php, например passthru('/usr/local/bin/pdftk --version')
, ничего не отображается
если я использовал php, например system("PATH=/usr/local/bin && pdftk --version");
, он говорит '/usr/local/bin /pdftk :there is no directory of file '
когда я запускаю этот функциональный сценарий, появляется запрос на загрузку файла, но когда я сохраняю его, ничего не сохраняется,
я проверил разрешение для этой папки и изменил его 0755, 0766, 0777, 0666
я перепробовал все, ничего не работает
В течение 3 дней я пытаюсь преодолеть это, и я тоже задал вопрос по этому поводу, но не могу понять, что, черт возьми, со мной происходит.
Может ли кто-нибудь помочь мне, прежде чем я ударись головой об стену?
php -r "passthru('/usr/local/bin/pdftk --version');"
? - person houbysoft   schedule 27.03.2012