我是YII的新手。我不知道这个阙是不是太傻了,但我无法弄清楚。
我有一个带有基本字段的视图和一个用于上传文件的浏览按钮。我也在模型中编写了所需的规则。
视图-
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'contact-form',
'htmlOptions' => array('enctype' => 'multipart/form-data'),
));
?>
<?php echo $form->fileField($model, 'filename');?> //filename is defined here
<?php echo $form->error($model, 'filename');?
控制器-
$model=new ContactForm;
if(isset($_POST['ContactForm']))
{
$model->attributes=$_POST['ContactForm'];
if($model->validate())
{
// Some code;
var_dump($_FILES['filename']); /**ERROR HERE**/
}
}
我已经在视图,模型和控制器中定义了"文件名"。然而,它将错误显示为"未定义的索引"。如果问题在于正确重定向它,那么为什么我能够正确转储页面中的其他字段?问题仅出在一个字段上。请帮我找出我的错误。
试试这个
$uploadFile= CUploadedFile::getInstance($model,'filename');
if($uploadFile !== null){
$name= $uploadFile->name;
$path= $uploadFile->tempName;
}else{
echo 'NO File Uploaded';
exit();
}
如果你想转储数据,那么你应该使用它
var_dump($_FILES['ContactForm_filename']);