2009-07-09 9 views
2

私は、私たちが職場で管理している製品を追跡するためにPHPを使用しているデータベースプログラムに取り組んでいます。PHP:.XLSファイルの内容をサーバーに保存せずに読み取るにはどうすればよいですか?

このプロジェクトでは、新しい製品データを含む.XLSファイルを選択できる必要があります。

タイプCHAR(3)、 ラインCHAR(2)、 数INT、 メジャーINT、 コメントVARCHAR(255)、 バリエーションCHAR(1)すなわち(」: 新しいデータは、次のフィールドで構成されていY '||' N ')

これらのファイルは、ExcelまたはGoogle Docsで作成されます。私はこのファイルから値を抽出することができるwonderful excel_readerを見つけました。

これは日常的に行われるアクションです。新製品が作成されると、私のサーバーディレクトリにファイルが保存されないようにします。 私が書き込んでいるインポートスクリプトは、ファイルのデータを配列に転送するので、ファイルを単に読み込むことになります。

私が実際にやりたいことは、ユーザーがHTML形式でファイルの場所を(ローカルコンピュータ上で)選択してから、そのファイルの内容をMySQLデータベースに保存させることですサーバ。

あなたが私に提供できるアドバイスをいただければ幸いです。私の計画がこのような状況に対処するための有効な方法であるとは確信していません。

+0

まあ、サーバー側にPHPを書いていると思いますか? PHPコードで処理したい場合は、そのファイルをサーバに送信しないようにする方法はわかりません。 ブラウザは多かれ少なかれhtmlとjavascriptを知っていて、どちらも直接データベースにアクセスできません。 – nos

+0

私はこの質問が投票された理由を見ません。それは詐欺ではなく、OPは本物の懸念を持っており、彼の質問にはっきりと提示する時間がかかっています。さらに、彼の最初の質問です。初心者に挨拶する素晴らしい方法:( – karim79

答えて

7

少なくとも一時的に保存する必要があります。あなたが必要とするものがあればそれを削除してください(おそらく、move_uploaded_fileを使ってtempディレクトリから移動した後、それを読むフォルダに移動した後に)、unlinkを使ってファイルを削除してください。

最後に、がすぐにアップロードファイルの削除を心配しています。ファイルが解析されてデータがデータベースに格納されている間に何か問題がスクリプトに発生するとどうなりますか?すぐにファイルを削除するのではなく、ファイルを定期的に削除して安全な側に置くcronジョブを作成することをお勧めします。

+2

私はこのサイトでは決して十分速くはありません:-) –

+1

すぐに削除するのではなく、cronの仕事のために+1 –

2

PHPスクリプトがサーバー上で実行されているため、Excelファイルをサーバーに保存して読み取る必要があります。ファイルを読み込んでデータベースに格納したら、ファイルを削除してください。

0

私の質問への回答はhereです。 PHPを使用してファイルのアップロード、移動、読み込み、および削除に関する素晴らしいチュートリアルです。

寄稿したすべての方に感謝します。

+1

@Clad - あなたは最も役に立つと思った答えにチェックを入れてください。 – karim79

関連する問題