-1

アップロードする jpg のファイル名を変更してから、次のように名前を変更しようとしていますが、うまくいきません。

$myfile = ( $_FILES['image']['name']);
$myfile = str_replace("'", '', $myfile);
$myfile = str_replace('&', '', $myfile);
$myfile = str_replace('%', '', $myfile);
$myfile = str_replace('!', '', $myfile);
$myfile = str_replace('#', '', $myfile);
$myfile = str_replace(' ', '', $myfile);

$random = mt_rand(22, 32);
$cj = "cj-";
$myfile = $cj . $random . $myfile;

最後の行をコメントアウトすると機能するため、3 つの変数の組み合わせが問題のように見えます。何か案は?

4

3 に答える 3

0

ここでの私の例では、ファイルが存在するかどうかを確認しています (失敗と考えることができる唯一のことです)。空白の画面はパーサー エラー (通常は構文に関連するもの) です。コードも短縮しました。

if(!empty($_FILES['image']['name'])){
   $myfile = $_FILES['image']['name'];
   $patterns = array("'","&","%","!","#"," ");
   $myfile = "cj-".mt_rand(22, 32).str_replace($patterns, '', $myfile);
   echo $myfile;
} else {
   echo "Empty Filename.";
}
于 2013-06-15T07:35:24.987 に答える