【问题标题】:Undefined index in YIIYII 中未定义的索引
【发布时间】:2014-04-04 10:01:48
【问题描述】:

我是 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**/
}
}

我在视图、模型和控制器中定义了“文件名”。然而,它将错误显示为“未定义的索引”。如果问题在于正确重定向它,那么为什么我能够正确转储页面中的其他字段?问题只在于一个领域。请帮我找出我的错误。

【问题讨论】:

  • 你能显示完整的错误文本吗?
  • 未定义索引:文件名是错误并指向行 var_dump($FILES['filename'])
  • 请出示您的 ContactForm 型号。
  • 只需在您的前端查找文件输入的名称并将其添加到_filename

标签: php yii


【解决方案1】:

试试这个

$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']);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-02
    • 1970-01-01
    • 2012-12-08
    • 2012-09-18
    • 1970-01-01
    • 2017-12-01
    • 2018-03-05
    相关资源
    最近更新 更多