【问题标题】:how to set if isset statement below如何在下面设置 if isset 语句
【发布时间】:2012-05-03 00:47:04
【问题描述】:

我在下面有一个 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 来检索会话?

以下是 php 脚本,其中包含 $_SESSION 和文件上传位置:

    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>   

【问题讨论】:

    标签: php javascript jquery ajax


    【解决方案1】:

    试试

    var imagename = <?php if (isset($_SESSION['imagename'])) echo json_encode($_SESSION['imagename']); ?>;
    

    【讨论】:

    • 如果$SESSION['imagename'] 没有设置怎么办? var imagename = ; 您可能想使用三元来创建有效的 javascript 或添加 else。
    • @PhpMyCoder -- 你是对的,尽管我会更进一步,我认为甚至没有必要使用会话。鉴于 OP 的代码在设置会话的代码中使用 $result,他可以将文件名作为另一个文件中的 JavaScript 函数的另一个参数传递。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-16
    • 2015-10-14
    • 1970-01-01
    • 1970-01-01
    • 2011-10-15
    相关资源
    最近更新 更多