ویرایش تگ ام پی تری Mp3 Tag Editor
1024 && $i<$total;$i++){ $size/=1024; } return round($size,$round).$sizes[$i]; } $default_mp3_directory = "./".jdate('y/m/d/'); $default_mp3_address = "./".jdate('y/m/d/'); $default_filename_prefix = ".mp3"; $default_songname_prefix = " ( ahaang.com )"; $default_comment = "@ahaang"; $default_artist = ""; $default_album = "( ahaang.com )"; // دیفالت سال به صورت داینامیک بر اساس سال میلادی فعلی تنظیم شد $default_year = date("Y"); $default_genre = "@ahaang"; if(isset($_POST['submit'])){ // اصلاح اول: ساخت و بررسی پوشه‌های تاریخ با دسترسی 02775 $directoryParts = explode('/', trim($default_mp3_directory, '/')); $currentDirectory = '.'; $requiredPermissions = 02775; foreach ($directoryParts as $part) { if ($part === '' || $part === '.') { continue; } $currentDirectory .= '/' . $part; $safeDirectory = htmlspecialchars( $currentDirectory, ENT_QUOTES, 'UTF-8' ); clearstatcache(true, $currentDirectory); if (!is_dir($currentDirectory)) { $created = @mkdir($currentDirectory, 0775); clearstatcache(true, $currentDirectory); // اگر درخواست دیگری هم‌زمان پوشه را ساخته باشد، ادامه بده if (!$created && !is_dir($currentDirectory)) { exit('

ساخت پوشه انجام نشد: ' . $safeDirectory . '

'); } } $permissions = @fileperms($currentDirectory); // chmod تحت تأثیر umask نیست؛ پوشه با مجوز درست تغییر نمی‌کند if ($permissions === false || ($permissions & 07777) !== $requiredPermissions) { if (!@chmod($currentDirectory, $requiredPermissions)) { exit( '

تنظیم دسترسی 02775 برای پوشه انجام نشد: ' . $safeDirectory . '؛ مالکیت و مجوز تغییر دسترسی را بررسی کنید.

' ); } } clearstatcache(true, $currentDirectory); $permissions = @fileperms($currentDirectory); if ($permissions === false || ($permissions & 07777) !== $requiredPermissions) { exit( '

سرور دسترسی 02775 را برای این پوشه اعمال نکرد: ' . $safeDirectory . '

' ); } } // پایان اصلاح ساخت پوشه $mp3_filepath = $_POST['mp3_filepath']; $mp3_filename = $_POST['mp3_filename']; $mp3_songname = $_POST['mp3_songname']; $mp3_comment = $_POST['mp3_comment']; $mp3_artist = $_POST['mp3_artist']; $mp3_album = $_POST['mp3_album']; $mp3_year = $_POST['mp3_year']; $mp3_genre = $_POST['mp3_genre']; if(filter_var($mp3_filepath,FILTER_VALIDATE_URL)){ if($mp3_filename!=""){ $mp3_filename = str_replace(DIRECTORY_SEPARATOR,"-X-",$mp3_filename); // رفع خطای Notice برای end(explode) $filepath_parts = explode(".",basename($mp3_filepath)); if(strtolower(end($filepath_parts))!="mp3"){ exit("

آدرس بایل با فرمت MP3 باشد.

"); } $filename_parts = explode(".",basename($mp3_filename)); if(strtolower(end($filename_parts))!="mp3"){ exit("

نام فایل باید پسوند MP3 داشته باشد.

"); } $sname = $default_mp3_directory.$mp3_filename; // اصلاح دوم: دامنه ثابت فقط برای لینک خروجی، با حفظ مسیر $script_url_directory = rtrim(dirname($_SERVER['SCRIPT_NAME']), '/'); $download_url = 'https://dl.ahaang.com' . $script_url_directory . '/' . substr($default_mp3_directory, 2) . rawurlencode($mp3_filename); $download_href = htmlspecialchars($download_url, ENT_QUOTES, 'UTF-8'); if(copy($mp3_filepath,$sname)){ $size = friendly_size(filesize($sname)); echo"

فایل زیر به آدرس :

$mp3_filepath

به آدرس زیر کپی شد :

".basename($sname)." ( $size )
"; $mp3_tagformat = 'UTF-8'; require_once('getid3/getid3.php'); $mp3_handler = new getID3; $mp3_handler->setOption(array('encoding'=>$mp3_tagformat)); require_once('getid3/write.php'); $mp3_writter = new getid3_writetags; $mp3_writter->filename = $sname; $mp3_writter->tagformats = array('id3v1', 'id3v2.3'); $mp3_writter->overwrite_tags = true; $mp3_writter->tag_encoding = $mp3_tagformat; $mp3_writter->remove_other_tags = true; $mp3_data['title'][] = $mp3_songname; $mp3_data['artist'][] = $mp3_artist; $mp3_data['album'][] = $mp3_album; $mp3_data['year'][] = $mp3_year; // رفع اشتباه تایپی: جایگزینی mp3_year با mp3_genre $mp3_data['genre'][] = $mp3_genre; $mp3_data['comment'][] = $mp3_comment; if($_FILES['mp3_image']['error']==0 && $_FILES['mp3_image']['size']>0) { if(in_array($_FILES['mp3_image']['type'],array("image/png","image/jpeg","image/gif"))){ $mp3_data['attached_picture'][0]['data'] = file_get_contents($_FILES['mp3_image']['tmp_name']); $mp3_data['attached_picture'][0]['picturetypeid'] = 3; $mp3_data['attached_picture'][0]['description'] = $_FILES['mp3_image']['name']; $mp3_data['attached_picture'][0]['mime'] = $_FILES['mp3_image']['type']; } else{ echo"

تصویر ناسازگار است.

"; } } $mp3_writter->tag_data = $mp3_data; if($mp3_writter->WriteTags()) { echo"

ویرایش تگ با موفقیت انجام شد.

"; } else{ echo"

Failed to write tags!
".implode("

",$mp3_writter->errors); } } else{echo"

امکان کپی فایل مقدور نیست.

";} } else{echo"

نام فایل خالی است.

";} } else{echo"

مسیر فایل اشتباه است.

";} } else{ ?>
آدرس فایل
نام فایل
عنوان فایل
توضیحات
خواننده
نام آلبوم
سال ساخت
Genre
عکس فایل