2013-04-15 54 views
0

我正在嘗試編寫腳本來上傳腳本以從我的服務器中刪除圖像。我不斷收到錯誤消息。任何人都可以找到這個代碼有問題嗎?PHP解除鏈接保持失敗

// Delete image 
if(isset($_GET['deleteImg']) && !empty($_GET['deleteImg']) && $_GET['deleteImg'] == true) 
{ 
// Get imagepath from database 
$result = mysql_query("SELECT image FROM frankkluytmans WHERE id=$id"); 
$imageDeletePath = mysql_fetch_assoc($result); 

// Delete image from server 
if(unlink($imageDeletePath['image'])) 
{ 
    // Continue if image has been reset in database 
    if(mysql_query("UPDATE frankkluytmans SET `image`='' WHERE id=$id")){ 
     // once deleted, redirect back to the view page 
     header("Location: index.php"); 
    } 
} 
else 
{ 
    ?> 
    <script type="text/javascript"> 
     window.alert('This image could not be deleted.'; 
    </script> 
    <? 
} 
} 
+0

是在db字段中的絕對路徑嗎?你可能會從不同的位置調用'unlink',所以它不起作用,因爲它找不到文件 – Fabio

+0

db字段中的路徑是這樣的:/gfx/image.png –

+0

,你現在在哪個目錄中? – Fabio

回答

1

我猜你的錯誤是在你的unlink()功能path,正如你所說的實際場就像是/gfx/image.png至極不看我像一個絕對路徑,糾正我,如果我錯了。

要直接刪除file並使用unlink(),腳本應與圖像位於同一文件夾中。所以我認爲最好將absolute path設置爲

$path_abs = ' /customers/d/8/e/frankkluytmans.nl/httpd.www/testsite/cms'; //is the `gfx` folder inside `cms` folder? if it is this will work otherwise you have to change 
if(unlink($path_abs . $imageDeletePath['image'])) 
+0

爲什麼不'/ gfx/image.png'是絕對路徑嗎? –

+0

它也可能是,你是對的,但我沒有從用戶那裏感受到,而我問他他 – Fabio

+0

我更新它「ht tp://www.mysite.nl/testsite/cms」。$ imageDeletePath ['image ']但它仍然不起作用? –