2014-04-04 53 views
0

我是YII的新手。我不知道這個問題可能太愚蠢,但我無法弄清楚。未定義的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**/ 
} 
} 

我在視圖,模型和控制器定義的 「文件名」。但是,它將錯誤顯示爲「未定義索引」。如果問題是正確重定向,那麼爲什麼我能夠正確地轉儲頁面中的其他字段?問題只有一個領域。請幫我找出我的錯誤。

+0

你能告訴完整的錯誤的文字? – user1954544

+0

未定義的索引:filename是錯誤並指向行var_dump($ FILES ['filename']) – user3496974

+0

請顯示您的ContactForm模型。 – user1954544

回答

0

試試這個

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