メモリにアップロードされたすべてのファイルに透かしを追加し、ファイルを特定のフォルダーに保存するアップロード機能を作成しようとしています。ただし、コードの透かし部分を機能させることができません。透かしコードが追加されていなくても、アップロード機能が機能することは確かです。エラーは、透かしコードが一時ファイルをハードドライブに移動するコードに「転送」する場所にあるに違いないと思います。この問題を解決するにはどうすればよいですか?
コードは次のとおりです。
foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){
$file_name = $_FILES['files']['name'][$key];
$file_size =$_FILES['files']['size'][$key];
$file_tmp =$_FILES['files']['tmp_name'][$key];
//$file_type=$_FILES['files']['type'][$key];
//if($file_size > 2097152){
//$errors[]='File size must be less than 2 MB';
//}
// echo '<img src="../images/watermark.gif">';
$q = "INSERT INTO media (file_name, album_id, file_size) VALUES ('$file_name','$album_id', '$file_size')";
$r = mysqli_query ($dbc, $q);
$desired_dir = '../../customers/' . $customerFolder . '/';
// load the watermark and the photo
$watermark = imagecreatefromgif('../images/watermark.gif');
$photo = imagecreatefromjpeg($file_tmp);
// center watermark on the photo
$wx = imagesx($photo)/2 - imagesx($watermark)/2;
$wy = imagesy($photo)/2 - imagesy($watermark)/2;
imagecopy($photo, $watermark, $wx, $wy, 0, 0, imagesx($watermark), imagesy($watermark));
if(empty($errors)==true){
move_uploaded_file($photo,"$desired_dir".$file_name);
//mysql_query($q);
}else{
print_r($errors);
}
}