2017-09-18 37 views
0

技術的な質問をしたかったので、ここにあります: 私のローカルホスト(私のローカルサーバ内)と私のプロジェクトの一部でlaravelを使ってウェブサイトを開発しています私はphpexcel APIを使用してExcelファイルを生成するために、いくつかのxmlファイルをアップロードする必要があります...そしてこれは私の仕事を進める方法です:laravelを使ってデータベースにファイルをアップロードする5

1 - 私はフォームを使用してXMLファイルを作成して、私の公開ディレクトリに保存私のプロジェクトで

2つのファイルをアップロードして使用したいときは、入力から名前を取り出してURLに追加して、localyというファイルを開きます。

$ xml_tmu = simplexml_load_file($ url)またはdie( "エラー:オブジェクトを作成できません");

私の質問は次のとおりです:サーバーに自分のウェブサイトをアップロードするとき、私は後で使うことができるように自分のxmlファイルをデータベースに保存する必要がありますか、サーバーのパブリックディレクトリに作成されます(私のローカルサーバの中の同じもののように)?そうでない場合は?そうするための最良の解決策は何ですか?

あなたがあなたのサーバー内のファイルを格納するデータベースを使用したくない場合は、データベースを使用する必要はありませんthnak君たち

+0

(.... nginxの、apache2の、WWW-データ)、もちろん、あなたのストレージフォルダは、ウェブサーバのユーザに対して書き込み可能である場合には、ローカルまたはリモートで動作します

$xml = Storage::get($xmlFilename); 

を使用してあなたのデータ(ファイル/ db)を保存するのは別の問題です。個人的には、パブリックディレクトリにアップロードするのではなく、同じサーバーにHTTPリクエストを実行する代わりに、ファイル名と 'fopen()'を使用するコントローラーを作成します。これは無意味で不要です。次に、内容を単純なxmlに渡すことができます。また、 'DOMDocument'は単純なxmlよりも良い方法です、それをチェックしてください! – delboy1978uk

+0

ここでは、すでにXMLファイルをExcelファイルに変換しているので、XMLファイルをアップロードする必要はありません。そしてDpはパブリックディレクトリ –

+0

にファイルをアップロードしていません。パブリックディレクトリに保存する必要はありませんが、Excelファイルを生成するためにXMLファイルを保存する必要があります。それをする最善の方法は何ですか? –

答えて

0

あなたは、リモートサーバー上で実行されている通常のLaravelのアプリを持っている場合は、おそらく

$xmlFilename = 'whatevernameyouneedhere.xml'; 

$xml_tmu = simplexml_load_file($url) or die("Error: Cannot create object"); 

Storage::put($xmlFilename, $xml_tmu); 

を行うことができます。そして、あなたはそれを得ることができますので、あなたはおそらく、あなたのアプリケーションディレクトリのルートに書き込み可能なstorageフォルダを持っていますバックHは

関連する問題