2

ファイルのアップロードが完了すると、必要なメッセージが表示される以下の JavaScript 関数があります。

function stopImageUpload(success){

      var imagename = <?php echo json_encode($imagename); ?>;   
      var result = '';
      if (success == 1){
         result = '<span class="msg">The file was uploaded successfully!</span><br/><br/>';
         $('.listImage').append(imagename + '<br/>');
      }
      else {
         result = '<span class="emsg">There was an error during file upload!</span><br/><br/>';
      }

return true;
}

現在、以下の $_SESSION 変数を取得し、上記の JavaScript 関数 (別のページにあります) を使用して $_SESSION を「$imagename」として呼び出し、.list に追加しようとしています。

しかし、私の質問は、上記の if issett ステートメントをどのように記述すれば、以下の $_SESSION 変数が設定されているかどうかがわかるため、$imagename を使用してセッションを取得できますか?

以下は、$_SESSION を含み、ファイルがアップロードされる php スクリプトです。

    if (isset($_POST['fileImage'])) {
      $_SESSION['imagename'] =  $_FILES['fileImage']['name'];

    if( file_exists("ImageFiles/".$_FILES['fileImage']['name'])) {  
        $_SESSION['fileImage']['name'] = $_FILES['fileImage']['name'];
        $parts = explode(".",$_FILES['fileImage']['name']);
        $ext = array_pop($parts);
        $base = implode(".",$parts);
        $n = 2;

        while( file_exists("ImageFiles/".$base."_".$n.".".$ext)) $n++;
        $_FILES['fileImage']['name'] = $base."_".$n.".".$ext;

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


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

          }
      }


    ?>

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

1 に答える 1

0

試す

var imagename = <?php if (isset($_SESSION['imagename'])) echo json_encode($_SESSION['imagename']); ?>;
于 2012-04-21T21:17:08.503 に答える