2012-04-11 23 views
-1

私は結果にに応じてメッセージを表示し、その下javscript機能を持っている:それがメッセージを正しく表示されない

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; 
    } 

常に以下のコードは、メッセージが表示され、「ファイルが正常にアップロードされましたの!」

<?php 

     $destination_path = str_replace("//", "/", $_SERVER['DOCUMENT_ROOT']."/")."ImageFiles"; 

     $result = 0; 

     $target_path = $destination_path . basename($_FILES['fileImage']['name']); 

     if(move_uploaded_file($_FILES['fileImage']['tmp_name'], $target_path)) { 
      $result = 1; 
     } 

     sleep(1); 

    ?> 

    <script type='text/javascript' language='javascript'> 
     window.top.window.stopImageUpload(1); 
    </script> 

しかし、私はこれ以下の行を変更すると、「ファイルのアップロード中にエラーが発生しました!」というメッセージが常に表示されます。なぜこれで、結果に応じて正しいメッセージを表示するように修正することができますか?

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

<?php echo $ result;からどのような価値を得ていますか? ?> –

+0

resultの値は0ですが、なぜ私はそれが常に0であるのですか?ファイルを移動するときに何か問題がある場合、ファイルが動いているかどうかを調べるにはどうすればよいですか? – user1324106

答えて

1

<?php echo $result; ?>が実際にレンダリングする内容を確認してください。ページのソースを見るだけです。

ほとんどの場合、0となります。次にmove_uploaded_fileがfalseを返す理由を調べてみてください。おそらく、ファイルの移動中に何か問題が起こっている可能性があります。

関連する問題