حذف کردن فایل (پی دی اف،موزیک،...) از سرور

ithelper

Member
سلام دوستان!!!
من میخام اطلاعاتمو حذف کنم از دیتابیس و سرور... صفحه من به این شکله که اسم کتاب و اسم فایل پی دی اف و اسم عکس در دیتابیس ذخیره میشه... و فایل پی دی اف در book/pdf و عکس در book/pic ذخیره شده... وقتی دکمه delete را میزنم... فقط یاد دارم اطلاعات رو از دیتابیس حذف کنم با این کد:
PHP:
<?php 
require_once "config.php";
$query = "DELETE FROM book WHERE id = {$_GET['id']}";
$result = mysql_query($query) or die('Invalid query');
mysql_close($link);
header("location: adminpanel.html.php");
?>
حالا با چه دستوری فایل هامو پاک کنم از تو سرور؟؟؟؟
لطفا کمک کنیدددددد
 

Cyletech

Member
اول اینکه فایل هارو چه نامشون چه غیره برای این چینین مصارفی در پایگاه داده نمیریزن ! اگر بخوای فایل هاتو ببینی در پوشه X چیا هستند از تابع زیر استفاده کن.
http://www.php.net/manual/en/function.scandir.php
همونطور که دوستمون هم عرض کردند برای حذف خود فایل از تابع unlink
http://www.php.net/manual/en/function.unlink.php
 

ithelper

Member
با تشکر از vahidmahdiun90 و cyletech
اگه میشه یکم دقیق تر توضیح بدید که به چه صورت فایل عکس به همون نامی که در پوشه book/pic/ است را پاک کنم؟
من متوجه شدم که با تابع unlink این کارو انجام بدم... اما اگه لطف کنید واضح تر بگید ممنون میشم.
 

MMSHFE

Active Member
با سلام، دوست گرامی، کافیه کد زیر رو استفاده کنید:
PHP:
if(file_exists('book/pic/'.$file) {
    unlink('book/pic/'.$file);
}
و قبلش، متغیر file$ رو با نام فایلتون (مثلاً mybook.jpg) مقداردهی کنید.
موفق باشید.
 

ithelper

Member
مرسی MMSHFE
اما از من ارور میگیره ... این الان چیش ایراد داره ؟ میگه خط 5 parse error داره...
PHP:
<?php 
require_once "config.php";
$file="pic.jpg";
$file2="pdf.pdf";
if(file_exists('book/pic/'.$file) {
    unlink('book/pic/'.$file);
} 
if(file_exists('book/pdf/'.$file) {
    unlink('book/pdf/'.$file);
} 
$query = "DELETE FROM book WHERE id = {$_GET['id']}";
$result = mysql_query($query) or die('Invalid query');
mysql_close($link);
header("location: adminpanel.html.php");
?>
 

sajadmaz

Member
PHP:
require_once "config.php";
$file="pic.jpg";
$file2="pdf.pdf";
if(file_exists('book/pic/'.$file)) {
    unlink('book/pic/'.$file);
} 
if(file_exists('book/pdf/'.$file)) {
    unlink('book/pdf/'.$file);
} 
$query = "DELETE FROM book WHERE id = {$_GET['id']}";
$result = mysql_query($query) or die('Invalid query');
mysql_close($link);
header("location: adminpanel.html.php");
 

ithelper

Member
مرسی sajadmaz
ایرادش همون پرانتزش بود:دی مرسی
اما فایل هارو پاک نکرد از فولدر :-؟ البته من اینارو لوکال تست می کنم فعلا....
چرا؟
 

ithelper

Member
کسی نمیتونه کمکم کنه واسه حذف فایل ها؟ اون که حذف نمیکنه:-؟ یا شایدم لوکال تست میکنمه؟ یا ربطی نداره؟
لطفااااااا
 

ithelper

Member
اینطور که پیداست فایل و پیدا نمیکنه انگار.... کسی میتونه کمک کنه چیکا کنم؟
 

ithelper

Member
دوستان کسی میتونه بگه چرا فایل هارو پاک نمیکنه؟ لطفا... کارم لنگه ه ه ه ...
 

Cyletech

Member
کاملاً درست کار می کنه. خودم هم امتحان کردم.
PHP:
if( $files = scandir( 'book/pic', 1 ) ) {
    $the_file = 'alireza.gif';
    $numerr = 0;
    foreach( $files as $key => $file ) {
        if( $file == $the_file ) {
            $numerr = 1;
            unlink( 'book/pic/alireza.gif' );
        }
    }
    if( $numerr == 1 ) {
        echo( 'ba movafaghiat hazf shod' );
    }
}
 

ithelper

Member
مرسی cyletech ، کمک شما باعث شد echo بگیرم از فایلی که قراره پاک کنم... که متوجه شدم من تو دیتابیسم با محلش فایل رو insert میکردم... یعنی احتیاج به book/pic/ نبود دیگه ..... خیلی ممنون دوستان از راهنماییتون....
 

جدیدترین ارسال ها

بالا