在服务器上载图像失败CAKEPHP

时间:2014-04-01 15:11:44

标签: mysql cakephp bluehost

我需要帮助。我在cakephp中构建了一个web应用程序。在localhost eveything工作得很好。图像上传,插入,删除正确。我上传它在服务器上的那一刻它显示错误!

注意事项(8):未定义索引:滑块[APP / Model / Slider.php,第245行]

注意事项(8):未定义索引:滑块[APP / Model / Slider.php,第247行]

警告(2):取消关联(/ home8 / ceraunia / public_html / afs / cesi / admin / app / webroot / img / uploads / slider / images /)[function.unlink]:是目录[APP / Model / Slider.php,第248行]

我不知道该怎么做,或者问题出在哪里。正如我在localhost中提到的,一切都很完美。我使用的主机服务器是blueHost。

任何帮助都会非常适合......

修改

Thi是导致问题的代码:

 public function afterSave($created, $options = array()) {
    $dir = 'img' . DS . 'uploads' . DS . 'slider' . DS . 'images' . DS; /*<=== DO NOT EDIT*/
 // then after deletation of the row we check if the file exist, if so we delete it. 
    if(isset($this->data[$this->alias]['pic_path']) && file_exists(WWW_ROOT . $dir .  $this->image['Slider']['pic_path'])){
        $img = WWW_ROOT . $dir . $this->image['Slider']['pic_path'];
        unlink($img);
        return true;                
   } else { $this->data[$this->alias]['pic_path'] = $this->image['Slider']['pic_path']; }
   return true;
} 

1 个答案:

答案 0 :(得分:1)

如何简单阅读邮件?

  

/ home8 / ceraunia /的public_html / AFS / CESI /管理/应用程序/根目录/ IMG /上传/滑块/图像/)   [function.unlink]:是目录

您正尝试删除unlink()的目录。我想,自you're not showing the stacktrace以来,其他两个通知来自丢失的文件名。

调试的基础知识:转到通知告诉您的行并调试那里的变量,并查看索引未定义的原因。您可以通过遵循stacktrace已经告诉您的代码路径来解决这个问题。

还有一个猜测:你正在使用Windows,而服务器是* nix框,而你没有使用DS常量来存储目录分隔符?