2011-05-19 78 views
1

我正在使用cakephp。在我的用戶模型中,我允許ppl上傳圖片。一旦它上傳好了,我保存圖片的網址爲$this->data['User']['image_url']並保存。要上傳我使用這裏給出的友好建議:http://www.jamesfairhurst.co.uk/posts/view/uploading_files_and_images_with_cakephpnewb問題 - 正斜槓和反斜槓grr

上傳完成後,我想調整照片的大小,所以我有一個縮略圖。我在這裏使用的建議:http://bakery.cakephp.org/articles/Perkster/2008/04/12/image-resizer-crop

一切正常,除了在$this->data['User']['image_url']看起來像files/photos/userimage.jpg

我使用的上傳腳本似乎期待與反斜槓的URL,而不是向前的人怎麼把價值當我運行它時,我得到錯誤

getimagesize(C:\xampp\htdocs\MyNewSite\app\webroot\img\files/photos\$image_name) [function.getimagesize]: failed to open stream: 

我該怎麼做才能解決這個問題?

+1

看起來像你在Windows上。你可能想使用['DIRECTORY_SEPARATOR'](http://php.net/manual/en/dir.constants.php)常量,即使它[應該不重要](http://stackoverflow.com/questions/6058347 /福利局個問題,前向斜線和回斜槓 - GRR/6058403#6058403)。 – alex 2011-05-19 12:10:11

回答

2

當評估變量的斜槓是沒有問題的, $image_name是。沒有看到代碼是不可能的,但是在分配文件名時可能會使用單引號,導致變量無法正確解析。

2

Windows接受兩個目錄分隔符\/,因此問題必須在其他地方。這是從錯誤消息

C:\xampp\htdocs\MyNewSite\app\webroot\img\files/photos\$image_name 

我想取,沒有文件$image_name;)看來,是你沒有讓PHP調用getimagesize()

+0

我是一個愚蠢的ballix。當我調用函數時,我在單引號中傳遞$ image_name。 D'oh感謝您的幫助。 – BPD 2011-05-19 12:22:16