0

ファイル入力とアップロードボタンを含むフォームがあります

<form action='imageupload.php' method='post' enctype='multipart/form-data' target='upload_target' onsubmit='stopImageUpload(this);' class='imageuploadform' >
    <p class='imagef1_upload_form' align='center'><label>Image File: <input name='fileImage' type='file' class='fileImage' /></label>
        <input type='submit' name='submitImageBtn' class='sbtnimage' value='Upload' /></label>
    </p>
    <p><span class='list></span></p>
</form>

ここで必要なのは、画像のアップロードが完了した場合、このフォームの下部(スパンタグ「リスト」内)に、アップロードされたファイルの名前が必要なことです。したがって、ファイルが正常にアップロードされると、アップロードされたファイルの名前が表示されます。2番目のファイルが正常にアップロードされると、最初のファイルの名前の下に、アップロードされた2番目のファイルの名前が表示されます。これはJavascriptで可能ですか?

私はすべてphpとjavascriptで整理されたファイルをアップロードしています。以下は、アップロードが完了した後のjavascript関数です。

function stopImageUpload(success) {
    var result = '';
    if (success == 1) {
        result = '<span class="msg">The file was uploaded successfully!</span><br/><br/>';
    }
    else {
        result = '<span class="emsg">There was an error during file upload!</span><br/><br/>';
    };
    return true;
}​

この関数はfomrの同じページにありますが、アップロードスクリプトと同じページにはありませんが、アップロードスクリプトでは、以下のjavascriptコードを使用してこの関数を呼び出します。

<script language="javascript" type="text/javascript">window.top.window.stopImageUpload(<?php echo $result; ?>);</script> 

以下は、ファイルをサーバーにアップロードするアップロードphpコードの一部です。

move_uploaded_file($_FILES["fileImage"]["tmp_name"],"ImageFiles/" . $_FILES["fileImage"]["name"]);
$result = 1;
4

1 に答える 1

0

PHP コールバックには、現在アップロードされているファイルの名前、またはアップロードされたすべてのファイルの配列が含まれている必要があります。

次に、stopImageUpload関数でその 2 番目のパラメーターを読み取り、#listそれに応じて操作します (更新/html の追加)。

<ul id="list"></ul>
function stopImageUpload(success, filename) {
    var result;
    if (success == 1)
        result = '<li class="msg">The file '+filename+' was uploaded successfully!</li>';
    else
        result = '<li class="emsg">There was an error during upload of file '+filename+'!</li>';
    $('#list').append(result);
    return true;
}​
于 2012-04-16T16:07:22.980 に答える