您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關yii框架如何實現圖片上傳功能,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
yii框架實現圖片上傳功能的源碼:
1、model
<?php namespace frontend\models; use yii\base\Model; use yii\web\UploadedFile; use yii\db\ActiveRecord; use yii\db\Query; class UploadForm extends ActiveRecord { /** * @var UploadedFile */ public $t_img; public $t_title; public $t_content; public function rules() { return [ [['t_img'], 'file', 'skipOnEmpty' => false, 'extensions' => 'png, jpg,bmp,jpeg'], ]; } public function attributeLabels() { return [ 't_img'=>'請上傳文章圖片', 'verifyCode' => '請在右面輸入驗證碼', ]; } public function upload() { $imgName=time().rand(100,999).".".$this->t_img->extension; if ($this->validate()) { $this->t_img->saveAs('uploads/' .$imgName); $path='uploads/' .$imgName; return $path; } else { return false; } } } ?>
2、控制器
$data=Yii::$app->request->post(); $data['t_addtime']=date('Y-m-d H:i:s'); $upload->t_img = UploadedFile::getInstance($upload, 't_img'); $path=$upload->upload();
3、視圖層
<?php use yii\widgets\ActiveForm; use yii\helpers\Html; use yii\helpers\Url; ?> <?=Html::a('返回','?r=course/classspace&c_id='.$c_id)?> <?php $form=ActiveForm::begin( [ 'options' => ['enctype' => 'multipart/form-data'], 'method'=>'POST', ] );?> <table class="table"> <tr> <td> <input type="text" placeholder="請填寫話題標題" name="t_title" id="t_title" value=<?=$coursedraft['d_title']?> > </td> </tr> <tr> <td> <textarea name="t_content" id="t_content" cols="30" rows="10" placeholder="請填寫話題內容"><?=$coursedraft['d_content']?></textarea> </td> </tr> <tr> <td> <?=$form->field($upload,'t_img')->fileInput()?> </td> </tr> <tr> <div class="btn-group"> <td> <?=Html::submitButton('提交話題',['class'=>'btn btn-success'])?> </td> </div> </tr> </table> <?php ActiveForm::end();?> <input type="hidden" value=<?=$c_id?> id="c_id" /> </body> <?php $js = <<<END $(function(){ // $(document).on('click','#caogao',function() { // var title = $("#t_title").val(); // var content = $("#t_content").val(); // // $.ajax({ // type: "POST", // url: "?r=course/coursedraft", // data: {t_title: title, t_content: content, d_id: d_id} // }) // }) function show(){ var title=$("#t_title").val(); var content=$("#t_content").val(); var c_id=$('#c_id').val(); $.ajax({ type: "POST", url: "?r=course/coursedraft", data: {d_title:title,d_content:content,c_id:c_id,d_state:0} }); } setInterval(show,5000); }) END; $this->registerJs($js); ?> </html>
關于yii框架如何實現圖片上傳功能就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。