結果に応じてメッセージを表示する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>