0

複数のテキスト フィールドとオプションのファイル アップロードを含むフォームを含む Web ページがあります。

ユーザーが送信ボタンをクリックすると、次のようになります。

  • アップロードするファイルが選択されているかどうかを確認する
  • その場合は、ファイルをアップロードします
  • ファイルのアップロードが完了したら、他のフォーム データを送信します。

私の質問はこれです。現時点では、私の php サーバー スクリプトはファイルが有効かどうかをチェックします。今のところ、フォーム データを送信する前に、ファイルが有効かどうかを知る方法がありません。ファイルがアップロードされたこと、有効であること、およびファイルが保存されたパスを知りたいです。

var xmlhttp=new XMLHttpRequest();
var formData = new FormData();
formData.append("thefile", file);   
xmlhttp.addEventListener("load", uploadComplete, false);
xmlhttp.open("POST","uploadfile.php",true);
xmlhttp.setRequestHeader("enctype", "multipart/form-data");
xmlhttp.send(formData);

.

 function uploadComplete(evt) {
    alert("image upload complete");
    submitForm();
 }

基本的に、関数 uploadComplete から読み取ることができる情報を php から送信したい

4

2 に答える 2

1

これを行う簡単な方法は、たとえば次のように、PHP スクリプトでエコーを作成することです。

echo json_encode({YOUR INFORMATIONS});

json_decodeでuploadComplete戻り、javascript で直接情報を使用できるようになります。

于 2012-07-20T08:53:21.710 に答える
0

また、ファイルが PHP でアップロードされているかどうかを確認することをお勧めします。関数 file_exists だけです。例を次に示します。

   if (file_exists($path)) {
   echo 'ok';
   }else{ 
   echo 'file not loaded';
   }

アップロードがうまくいかないことがよくあります。

于 2012-07-20T09:04:48.363 に答える