【问题标题】:Uploading image in server failed CAKEPHP在服务器中上传图像失败 CAKEPHP
【发布时间】:2014-04-01 15:11:43
【问题描述】:

我需要这方面的帮助。我已经在 cakephp 中构建了一个 Web 应用程序。在本地主机上一切都很好。图像被正确上传、插入、删除。我上传到服务器的那一刻,它显示错误!

注意(8):未定义索引:Slider [APP/Model/Slider.php, line 245]

注意(8):未定义索引:Slider [APP/Model/Slider.php, line 247]

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

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

任何帮助都会非常感谢..

编辑:

这是导致问题的代码:

 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;
} 

【问题讨论】:

  • 查看模型 Slider 的第 245 和 247 行可能有用吗?此外,与您的本地主机相比,服务器的某些规格(例如 php 版本)。您没有向我们提供太多信息。
  • 我添加了您要求的额外代码行!...我不知道我在这里缺少什么您知道@Nunser 吗?
  • 就我所见,不知道$this-&gt;image 有什么,该数组根本没有索引。现在,为什么没有它?我不知道,也许首先显示您如何保存这些数据?请添加本地主机和服务器的 php 和 mysql 版本

标签: mysql cakephp bluehost


【解决方案1】:

简单阅读消息怎么样?

/home8/ceraunia/public_html/afs/cesi/admin/app/webroot/img/uploads/slider/images/) [function.unlink]: 是目录

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

调试的基础知识:转到通知告诉您的行并在那里调试变量,看看为什么索引未定义。您可以通过跟踪堆栈跟踪已经告诉您的代码路径来弄清楚这一点。

还有一个猜测:你使用的是 windows,服务器是一个 *nix 盒子,你没有使用 DS 常量作为目录分隔符?

【讨论】:

  • 它不是目录,它是目录中的图像。关键是当我尝试添加新记录时会发生错误。但是当我停用错误报告时。图片确实上传成功。正如它应该的那样。
  • 它是一个目录。还是您认为解析器在骗您?好吧,如果您这么认为,请在 php.net 上创建一个错误报告并告诉他们 unlink() 无法正常工作...我还解释了为什么它可能是我的答案中的一个目录。在任何情况下禁用错误都不是解决方案,只是可怕的不良做法。开始学习如何正确调试。
猜你喜欢
  • 2022-08-17
  • 2021-02-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-30
  • 2019-07-20
  • 2016-09-26
  • 1970-01-01
相关资源
最近更新 更多