后台多图片上传,前台调用图片列表

分享
已结 精华 置顶
3 188
yuhq
yuhq 2018-11-18

之前一直想弄这个功能,奈何半路学php,能力不足,一直到现在才弄出来,小小的分享一下,如果更好的写法期待大家提出。


1、后台模型字段添加“多张图片”字段类型,上传多张图片

2、home/controller/Common.php文件新增以下代码:

16号早上发现首页报错打不开,检查才发现是由于$str那里的if判断有问题,还是老老实实的设置数据表名如果只有一个地方需要调用多图片,去掉判断

//后台多图片上传,前台调用图片,原理是用explode把字符串转为数组
        //判断是列表的详情页还是单页面,表名自行设置
        if(input('id') != ''){
            $str = Db::name('article')->where("id",input('id'))->find();
        }else{
            $str = Db::name('page')->where("id",input('catId'))->find();
        }
        $arr = explode(';',$str['pics']);//多图上传后,图片地址之间是用;隔开的,如果是其他符号请修改
        $arr2 = array();
        foreach($arr as $k=>$v){
            $arr = explode(';',$v);
            $arr2[$k] = $arr[0];
        }
        $this->assign("arr2",$arr2);

3、前台页面代码:

{volist name="arr2" id="vo"}
    <img src="{$vo}"/>
{/volist}

3步做完后,前台页面就能调用多张图片了。


最近有3块内容想学习,哪位大佬能指导一下哪里有这方面的详细资料,可以给网址我,我在网站找的很多都是片面的,我半桶水的能力还理解不来

1、表单提交数据的安全过滤(比如textarea输入了远程script路径,要如何自动过滤删除?)

2、XSS防御

3、SQL防注入


回帖
  • 2018-11-20 11:32:26



    0 回复
  • 2018-11-20 09:13:04

    {php}$imgs_arr = explode(";",$info['imgs']);{/php}
    
    {volist name="imgs_arr " id="img"}
        <img src="{$img}">
    {/volist}

    这个系统前台页面代码直接输出也可以吧,不需要改控制器

    0 回复
  • chichu VIP5 (管理员)
    2018-11-18 20:04:59



    0 回复
取消评论