2012-03-31 65 views
0

我有PHP代碼以下行應該重新命名已經存在的服務器在最後查詢生成的ID上的文件:PHP重命名文件,這個SQL ID

$image1Oldname = "images/" . $myfile; 
$image1NewName = "images/" . mysql_insert_id() . ".jpg"; 

rename($image1Oldname, $image1NewName); 

出於某種原因,這樣做腳本運行時不重命名文件。

有什麼建議嗎?

+3

'回聲 「$ image1Oldname $ image1NewName」;' – 2012-03-31 12:50:46

+0

啊!謝謝......突出問題! – Tom 2012-03-31 12:55:02

回答

2

有什麼建議嗎?

當然。
你必須學習如何調試你的代碼。

雖然這不是火箭科學。

  • 只要打開
  • 所有可能的錯誤報告和回聲出每一塊數據的您使用的是看,如果出現錯誤。
ini_set('display_errors',1); 
error_reporting(E_ALL); 

$image1Oldname = "images/" . $myfile; 
$image1NewName = "images/" . mysql_insert_id() . ".jpg"; 

var_dump($image1Oldname, $image1NewName); 
rename($image1Oldname, $image1NewName); 
exit; 
-1

您是否檢查過您(您的PHP守護進程)是否有權對其進行重命名,並且路徑是否正確?

+0

猜測是不是要走的路。每一位新手PHP消費者都必須學習這一點。 – 2012-03-31 12:50:51

+0

如果我硬編碼它,而不是使用變量,它的工作正常,所以我絕對有權限 - 重命名(「images/original.jpg」,「images/new.jpg」);' – Tom 2012-03-31 12:51:21

+0

然後你的路可能是錯誤的不知何故。嘗試回顯$ image1Oldname和$ image1NewName。併發布它所說的內容。 – 2012-03-31 12:53:44