Php 上载到web服务器的文件不包含实际的文件数据

Php 上载到web服务器的文件不包含实际的文件数据,php,cakephp,file-upload,http-post,Php,Cakephp,File Upload,Http Post,我正在尝试创建一个简单的Cakephp 2.5.1应用程序,它接受文件上传。我正在使用中提供的文件上传器插件。我按照网站上的说明安装了它,看起来效果不错 下面的代码被添加到model.php中。模型表中有一列“图片” public $actsAs = array( 'Uploader.Attachment' => array( // Do not copy all these settings, it's merely an example 'pic

我正在尝试创建一个简单的Cakephp 2.5.1应用程序,它接受文件上传。我正在使用中提供的文件上传器插件。我按照网站上的说明安装了它,看起来效果不错

下面的代码被添加到model.php中。模型表中有一列“图片”

public $actsAs = array(
    'Uploader.Attachment' => array(
        // Do not copy all these settings, it's merely an example
        'picture' => array(
            'nameCallback' => '',
            'append' => '',
            'prepend' => '',
            'tempDir' => TMP,
            'uploadDir' => '',
            'transportDir' => '',
            'finalPath' => '',
            'dbColumn' => '',
            'metaColumns' => array(),
            'defaultPath' => '',
            'overwrite' => false,
            'stopSave' => true,
            'allowEmpty' => true,
            'transforms' => array(),
            'transformers' => array(),
            'transport' => array(),
            'transporters' => array(),
            'curl' => array()
        )
    )
);
在相关的ctp文件中,我有以下代码

<?php
    echo $this->Form->create('Upload', array('type' => 'file'));
    echo $this->Form->input('picture', array('type' => 'file'));
    echo $this->Form->end('Submit');
?>
有人能告诉我可能出了什么问题吗?多谢各位


编辑:我刚刚在Chrome调试中注意到,在HTTPPOST方法下,发送的文件类型为
text/html
。这是个问题吗?如果是,如何将类型更改为
image/jpg

更改以下行

echo $this->Form->input('picture', array('type' => 'file'));
对以下语法进行修改

echo $this->Form->input('picture', array('type' => 'file/image'));
示例代码:

echo $form->labelTag('File/image', 'Image');
echo $html->file('File/image');

您在发送文件的html中使用了多部分类型?我不确定。在Cakephp中,视图助手在后台执行操作。让我先检查一下。还要验证该字段的名称是否与cakephp上的上载处理程序上的名称相同。下面的表单代码确实包含
enctype=“multipart/form data”
Picture
@eddwinpaz:问题是否由HTTP Post中发送的文件类型是
text/html
而不是
image/jpg
引起?谢谢!验证并标记为正确答案。但还有一个问题。在我更改为
“文件/图像”
后,输入字段变成一个文本框,我必须在其中输入文件的完整路径。当它是
'type'=>'file'
时,我可以单击它,然后出现一个对话框来选择文件。有趣的是,完整路径并没有出现,只有文件名出现。想知道这是否是问题的根源。阅读此
echo $form->labelTag('File/image', 'Image');
echo $html->file('File/image');