【发布时间】:2014-04-08 04:55:07
【问题描述】:
我的控制器Sitecontroller.php,查看文件upload_new.php,型号是Resume_edit.php。
我收到了这个错误:
致命错误:在 C:\wamp\www\yii\jobsite_orginal\protected\controllers\SiteController.php 第 406 行的非对象上调用成员函数 saveAs()*
站点控制器.php
<?php
class SiteController extends Controller
{
public function actionupload_new()
{
$user_id = 97;
$jobProfileM2 = new Resume_edit();
$jobProfileM2 = Resume_edit::model()->findByAttributes(array('user_id' => $user_id));
if(isset($_POST['Resume_edit']))
{
$jobProfileM2->attributes = $_POST['Resume_edit'];
$jobProfileM2->user_id = $user_id;
if($jobProfileM2->save())
{
$jobProfileM2->user_id = $user_id;
Yii::app()->user->setFlash('success', "Resume Updated Successfully!");
$time=time(); $filename=CUploadedFile::getInstance($jobProfileM2,'resume');
$filename2=explode('.',$filename);
$filename3=$filename2[0].$time.'.'.$filename2[1];
$jobProfileM2->resume=$filename3;
if($jobProfileM2->save())
{
$jobProfileM2->resume->saveAs(Yii::app()->basePath.'/../resume/'.$filename3);
}
}
else
{
Yii::app()->user->setFlash('error', "Error,Canot save Data!");
}
}
$this->render('upload_new', array('model' => $jobProfileM2));
}
}
?>
view-upload_new.php
<div class="form">
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'login-form',
'enableClientValidation'=>true,
'htmlOptions' => array('enctype' => 'multipart/form-data'),
'clientOptions'=>array(
'validateOnSubmit'=>true
),
)); ?>
<?php
foreach(Yii::app()->user->getFlashes() as $key => $message) {
echo '<div class="flash-' . $key . '">' . $message . "</div>\n";
}
?>
<p class="note">Fields with <span class="required">*</span> are required.</p>
<div class="row">
<?php
echo $form->labelEx($model, 'resume');
echo $form->fileField($model, 'resume');
echo $form->error($model, 'resume');
?>
</div>
<div class="row buttons">
<?php echo CHtml::submitButton('Submit'); ?>
</div>
<?php $this->endWidget(); ?>
</div>
这是第 406 行:
$jobProfileM2->resume->saveAs(Yii::app()->basePath.'/../resume/'.$filename3);
我该如何解决这个问题?
【问题讨论】:
标签: php file-upload yii properties file-rename