webappでdocFilesを生成しようとしています。まず、Markswindollsのjquery.wordexport.jsツールのようなFrontendでいくつかのツールを使用することを考えていました。しかし、ヘッダーやフッターの設定や整列のような機能はあまりないので、私は 'phpword'で作業を始めました。phpword生成されたドキュメントをフロントエンドに送信
私の問題は、docFileがサーバーに保存されていることです。フロントエンドにajaxを介してファイルを送信する可能性はありますか?そのため、ユーザーは「ダウンロードした.doc」ボタンを押した後にファイルを取得できますか?
他の推奨事項もあります。
jqueryの:
$('#word-button').on('click', function() {
$.ajax({
type: "POST",
url: "phpWORD/gendocx.php",
success: function (msg, string, jpXHR) {
console.log('AJAX SUCCESS');
},
complete : function(data, textStatus, jqXHR){
console.log('AJAX COMPLETE');
},
error: function(xhr, desc, err) {
console.log(xhr);
console.log("Details: " + desc + "\nError:" + err);
}
});
})
gendocx.php:
<?php
require_once 'PHPWord.php';
$PHPWord = new PHPWord();
$section = $PHPWord->createSection();
// Create a new PHPWord Object
$PHPWord = new PHPWord();
// Every element you want to append to the word document is placed in a section. So you need a section:
$section = $PHPWord->createSection();
// After creating a section, you can append elements:
$section->addText('Hello world!');
// You can directly style your text by giving the addText function an array:
$section->addText('Hello world! I am formatted.', array('name'=>'Tahoma', 'size'=>16, 'bold'=>true));
// If you often need the same style again you can create a user defined style to the word document
// and give the addText function the name of the style:
$PHPWord->addFontStyle('myOwnStyle', array('name'=>'Verdana', 'size'=>14, 'color'=>'1B2232'));
$section->addText('Hello world! I am formatted by a user defined style', 'myOwnStyle');
// You can also putthe appended element to local object an call functions like this:
$myTextElement = $section->addText('Hello me!');
// At least write the document to webspace:
$objWriter = PHPWord_IOFactory::createWriter($PHPWord, 'Word2007');
$objWriter->save('helloWorld.docx');
?>
感謝。私はこれに新しいので、あなたがしたようにどこから始めたり解決したらいいかわかりません。 – moody
こんにちは、あなたの目標は、ファイルではなくPHP出力ストリームにドキュメントを保存し、そのストリームを変数に取り込むことです。私は単純化されたバージョンで答えを更新しました – Auris