溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

yii如何實(shí)現(xiàn)圖片上傳

發(fā)布時(shí)間:2021-01-13 11:44:42 來源:億速云 閱讀:266 作者:小新 欄目:編程語言

這篇文章將為大家詳細(xì)講解有關(guān)yii如何實(shí)現(xiàn)圖片上傳,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

具體代碼如下:

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'=>'請(qǐng)上傳文章圖片',
            'verifyCode' => '請(qǐng)?jiān)谟颐孑斎腧?yàn)證碼',
        ];
    }
 
 
    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="請(qǐng)?zhí)顚懺掝}標(biāo)題" 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="請(qǐng)?zhí)顚懺掝}內(nèi)容"><?=$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>

關(guān)于“yii如何實(shí)現(xiàn)圖片上傳”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

yii
AI