あるページにあるphpスクリプトからファイルの名前を受け取り、別のページにあるjavascript関数に追加しようとしています。問題は、エラー コンソールに無効な正規表現フラグ w エラーが表示され、 undefine variable: 'fileimagename for the line for the below: と表示されることです。
var nameimagefile = <?php echo $fileimagename; ?>;
このエラーを修正するにはどうすればよいですか?
以下は JavaScript 関数 (QandATable.php) です。
function stopImageUpload(success){
var nameimagefile = <?php echo $fileimagename; ?>;
var result = '';
if (success == 1){
result = '<span class="msg">The file was uploaded successfully!</span><br/><br/>';
$('.listImage').append(nameimagefile + '<br/>');
}
else {
result = '<span class="emsg">There was an error during file upload!</span><br/><br/>';
}
return true;
}
以下は、ファイル名が次の別のページ (imageupload.php) にある php コードです。
<?php
session_start();
if (isset($_POST['fileimagename'])) {
$_SESSION['fileimagename'] = $_SESSION[' $_FILES['fileImage']['name']'];
}
if( file_exists("ImageFiles/".$_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.window.stopImageUpload(<?php echo $result;?>);</script>