ホームページ >バックエンド開発 >PHPチュートリアル >アップロードした絶対パスを取得したいのですが、ファイル名とテンプレートファイルしか取得できません。アップロードの絶対パスを取得する方法を教えてください。

アップロードした絶対パスを取得したいのですが、ファイル名とテンプレートファイルしか取得できません。アップロードの絶対パスを取得する方法を教えてください。

WBOY
WBOYオリジナル
2016-06-23 13:57:061235ブラウズ



ディスカッション (解決策) への返信

その絶対パスはアップローダーのマシン上にありますが、それはあなたと何の関係がありますか?
受け取ったファイルを処理するだけです

なぜそのパスを取得したいのかわかりませんが、js を使用してみてください。

その絶対パスはアップローダのマシン上にありますが、あなたと何の関係があるのでしょうか?
受け取ったファイルを処理するだけです。

絶対パスを取得して形式を変換したい場合があります。ただし、Execl では処理できません。処理する前に CSV 形式に変換する必要があります。

なぜそのパスを取得したいのかわかりませんが、本当に取得したい場合は、js を使用してみてください。

PHP を取得するための対応する方法はありますか? PHP に変換してからそれほど時間が経っていないはずです。該当する情報はオンラインで見つかりませんでした。

あなたは北京にいて、私は上海にいます。Excel ファイルをアップロードする場合、CSV ファイルに変換するために私のマシンに行く必要がありますか?

ファイルがアップロードされると、php.ini の Upload_tmp_dir が別のパスに設定されていない限り、デフォルトでサーバーのデフォルトの一時ディレクトリに保存されます。サーバー上のデフォルトの一時ディレクトリは、PHP 実行環境の環境変数 TMPDIR を変更することでリセットできます。実際にどのディレクトリが分からない場合は、move_uploaded_file を使用して転送してから処理することができます。ディレクトリを知る必要はありません。後で処理しますので、直接転送してください。

js を使用して入力ボックスの値を取得し、それを隠しフィールドに入れて、一緒に送信する必要があります。


複雑にしないでください。CSV ファイルをアップロードする必要があることをユーザーに求めることができます。

あなたは北京にいて、私は上海にいます。私が Excel ファイルをアップロードしたら、私のマシンに行って CSV ファイルに変換しますか?

あなたの話によると、彼の側で改心は完了しているはずです。しかし、今必要なのはファイルではなく、ファイル内のデータであり、それをローカルに直接インポートしてデータベースに保存できます。

js を使用して入力ボックスの値を取得し、それを隠しフィールドに入れて、一緒に送信する必要があります。


複雑にしないでください。CSV ファイルをアップロードする必要があることをユーザーに求めることができます。
私は以前そうしましたが、マネージャーは他の人が Excel を直接アップロードできるように変更するよう主張しました。 JSを使って実装する方法を考えてみたいと思います。

そのファイルのローカルパスを取得したとしても、js を使用してそのローカルファイルを変更できますか?

ファイルがアップロードされると、php.ini の Upload_tmp_dir が別のパスに設定されていない限り、デフォルトでサーバーのデフォルトの一時ディレクトリに保存されます。サーバー上のデフォルトの一時ディレクトリは、PHP 実行環境の環境変数 TMPDIR を変更することでリセットできます。実際にどのディレクトリが分からない場合は、move_uploaded_file を使用して転送してから処理することができます。ディレクトリを知る必要はなく、直接転送するだけです。これについては後で説明します。

ここではこのメソッド(move_uploaded_file)は使えません。Execlをアップロードすると事前に転送されるようです。データが正しくなくなります。そこで、アップロード完了後にExeclファイルをCsv形式に変換し、プログラムを変更せずにそのまま利用したいと考えています。まずはJSを使ってみます。勉強したばかりで、まだ理解できないことがたくさんありますが、今おっしゃった原則です。とても役に立ちます、ありがとう。

そのファイルのローカルパスを取得したとしても、js を使用してそのローカルファイルを変更できますか?

PHP コードを使用して CSV ファイルを再生成します。これを試してみたところ、うまくいきました。

次に、アップロードされたファイル (一時ファイル) の種類を判断して、その種類が execl である場合は、PHP を使用して変換します

どうしますか? ? ?ファイルをアップロードすると、一時ファイル名が生成されます。PHP には、Web ページにローカル データの取得を許可する機能がありません。 Excel ファイルをサーバーの一時ディレクトリに直接転送し、サーバーでファイルを処理し、処理後にデータベースにインポートするだけです。

これが唯一の方法です。


ファイルがアップロードされると、php.ini の Upload_tmp_dir が別のパスに設定されていない限り、デフォルトでサーバーのデフォルトの一時ディレクトリに保存されます。サーバー上のデフォルトの一時ディレクトリは、PHP 実行環境の環境変数 TMPDIR を変更することでリセットできます。実際にどのディレクトリが分からない場合は、move_uploaded_file を使用して転送してから処理することができます。ディレクトリを知る必要はありません。後で処理しますので、直接転送してください。
ここではこのメソッド(move_uploaded_file)は使えません。Execlをアップロードすると事前に転送されるようです。データが正しくなくなります。そこで、アップロード完了後にExeclファイルをCsv形式に変換し、プログラムを変更せずにそのまま利用したいと考えています。まずはJSを使ってみます。勉強したばかりで、まだ理解できないことがたくさんありますが、今おっしゃった原則です。とても役に立ちます、ありがとう。

ファイルをアップロードしていませんか?なぜこの機能が使えないのでしょうか?この機能はアップロード専用であり、他の場所では使用できません。移動可能な目標位置に移動させて、あとは自由に対処できます。

そのファイルのローカルパスを取得したとしても、そのローカルファイルをjsを使用して変更できますか?
PHP コードを使用して CSV ファイルを再生成します。これを試してみたところ、うまくいきました。

js を使用してユーザーのコンピューター上のファイルを変更できますか? ? ?なんという奇跡でしょう。 。 。

ユーザーが複数のデータを入力してデータベースに保存できるようにしたいと考えています。
Excel を処理できる場合は、ユーザーがアップロードした Excel ファイルを取得した後、バックグラウンド プログラムを通じて Excel ファイルから直接データを抽出し、保存します。
Excel を扱えない場合は、ユーザーに Excel ファイルをアップロードさせず、フォームに直接入力するか、固定形式の txt ファイルをアップロードするなど、扱える他のデータ形式に置き換えてください。

ユーザーがアップロードしたファイルの絶対パスをユーザーのコンピュータ上で取得することについては、取得しても、ユーザーのコンピュータ上でファイルを操作することはできません。


そのファイルのローカルパスを取得したとしても、そのローカルファイルをjsを使用して変更できますか?
PHP コードを使用して CSV ファイルを再生成します。これを試してみたところ、うまくいきました。

js を使用してユーザーのコンピューター上のファイルを変更できますか? ? ?なんという奇跡でしょう。 。 。

ユーザーが複数のデータを入力してデータベースに保存できるようにしたいと考えています。
Excel を処理できる場合は、ユーザーがアップロードした Excel ファイルを取得した後、バックグラウンド プログラムを通じて Excel ファイルから直接データを抽出し、保存します。
Excel を扱えない場合は、ユーザーに Excel ファイルをアップロードさせず、フォームに直接入力するか、固定形式の txt ファイルをアップロードするなど、扱える他のデータ形式に置き換えてください。

ユーザーがアップロードしたファイルの絶対パスをユーザーのコンピュータ上で取得することについては、取得しても、ユーザーのコンピュータ上でファイルを操作することはできません。
正解は二階です
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。