PHP与前端结合知识点

来源:互联网 发布:阿里云查看挂载磁盘 编辑:程序博客网 时间:2024/05/16 02:38
1.<script type="text/javascript">

    //$('#Form-field-Course-introduction-group').append('<div id="txtNum">0/500</div>');
    $('#Form-field-Package-introduction-group').after('<div id="txtNum" style="position: absolute;right: -50px;bottom: 18px;"></div>');
    var len=$('#Form-field-Package-introduction').val().length;
    $('#txtNum').text(len+"/2000");
    $('#Form-field-Package-introduction').bind('input propertychange', function() {

         var val=$(this).val();
         var len=val.length;
         var count=$(this).siblings('span');
         if(len>2000){
            len=2000;
            $(this).val(val.substring(0,2000));
         }
        $('#txtNum').text(len+"/2000");
    });

   //$('#Form-field-Package-name').attr('maxlength', 30);


</script>


获取,截取2000个字符。


2、前后端对接接口问题
     困扰我已久的问题
     后台接口:
   //获取套餐课程信息 
    public function onGetPackageCourses()
    {
       $packageId = post('id',0);
       $page      = post('page',1);


       $packageCourseIds = PackageCourseModels::lists('id');
       if(!empty($packageCourseIds)){
            $packageCourses = PackageCourseModels::whereIn('id',$packageCourseIds)
                     ->with('course')
                     ->get();
       }
            // trace_log($packageCourses);

        // return['packageCourses' => $this->makePartial('list_content',['packageCourses' => $packageCourses])];
        return $packageCourses;
    }

     前端渲染:
     页面:
 <div class="control-list ">

    <?= $this->makePartial('list_content',['packageCourses' => $packageCourses]) ?>
    </div>

   Content 内容对接
        <?php foreach( $packageCourses as $packageCourse): ?>
            <tr id="course-first">           
                <td><?= $packageCourse->id ?> </td>
                <td>第二阶段</td>
                <td>3000</td>
                <td>236</td>
                <td><a href="javascript:void(0)" class="view">预览</a>   &nbsp <span class="specil"><a href="javascript:void(0)">                         移除</a></span> </td>
            </tr>
            <?php endforeach ?>

问题:是否是toArray()
Tips:
          get()得出的数据可以直接渲染到页面中
          toArray()得出的直接报错,错误信息是  is not object。
          如果不是一个对象那就是数组;
 5、    对于复杂的页面的嵌套
     


<link rel="stylesheet"  type="text/css" href='/plugins/dapeng/assets/css/watch_record.css'>
<?php $courseProduces =$this->getCourseProduces();
      $users = $this->getProduces();
      $vipCourses = $this->getVipCourses();
      $publicCourses = $this->getPublicCourses();
      $watchTotal  = $this->getWatchTotal();

?>
<div class="header-tips">
    <div class="tips-left">
        个人进度详情
    </div>
</div>
<div class="control-list">
    <?= $this->makePartial('list_schdule_content',['users' => $users,'total' => $watchTotal]) ?>
</div>
<div class="control-tabs content-tabs" data-control="tab">



        <ul class="nav nav-tabs">
        <li class="active">
            <a href="#contentTabOne">VIP课</a>
        </li>
        <li>
            <a href="#contentTabThree">公开课</a>
        </li>
    </ul>



    <div class="tab-content" style="overflow: auto;">
    <?php if($vipCourses != 0): ?>




        <div class="tab-pane active">
            <div class="level-tips">
                在学<span>2</span>门课程,已学<span>1</span>门课程,累积时长<span>48</span>小时
            </div>
            <?php foreach($vipCourses as $key => $course): ?>
            <?php if(!empty($course)): ?>
            <div class="level-body">
                <div class="level-1">

                    <div class="level-1-title level-style">
                        <span><?= $course['name'] ?></span>
                        <div class="progress-box">
                            <span class="pull-left">进度:</span>
                            <div class="progress pull-left">
                                <div class="progress-bar" style="width: 60%;">
                                </div>
                            </div>
                            <span class="pull-left">60%</span>
                        </div>
                        <span>累积观看时长8小时</span>
                        <span>课时数据</span>
                        <span class="sanjiao-icon icon-sort-asc"></span>
                    </div>

                    <div class="level-1-body">
                    <?php foreach($course['period'] as $key1 => $period): ?>
                         <?php if(!empty($period)): ?>
                        <?php foreach($period['units'] as $key2 => $unit): ?>
                            <?php if(!empty($unit)): ?>
                            <div class="level-1-title level-style">
                                <span><?php echo $unit['name']; ?></span>
                                <div class="progress-box">
                                    <span class="pull-left">进度:</span>
                                    <div class="progress pull-left">
                                        <div class="progress-bar" style="width: 60%;">

                                        </div>
                                    </div>
                                        <span class="pull-left">60%</span>
                                </div>
                                <span>课时数据</span>
                                <span class="sanjiao-icon icon-sort-asc"></span>
                            </div>
                            <div class="level-1-body">
                                <div class="level-2-tips level-style">
                                    <span class="class-name">课时名称</span>
                                    <span class="IP-address">IP地址</span>
                                    <span class="borwser-type">浏览器</span>
                                    <span class="client-type">客户端</span>
                                    <span class="study-time">开始学习时间</span>
                                    <span style="width: 200px;padding-left: 20px;">进度</span>
                                    <span class="study-time-all">已观看</span>
                                    <span class="study-error">异常</span>
                                    <span class="icon-share"></span>
                                </div>
                            <div class="level-2">
                                <?php foreach($unit['lessons'] as $key2 => $lesson): ?>
                                    <?php if(!empty($lesson)): ?>

                                <?php foreach($lesson['watchrecord'] as $key3 => $watchrecord): ?>
                                    <?php if(!empty($watchrecord)): ?>
                                <div class="level-2-title level-style">
                                    <span class="class-name" title="啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦了"><?= $lesson['title'] ?>
                                    </span>

                                    <span class="IP-address"><?= $watchrecord['address'] ?></span>
                                    <span class="borwser-type"><?= $watchrecord['browser'] ?></span>
                                    <span class="client-type"><?= $watchrecord['client'] ?></span>
                                    <span class="study-time"><?= $watchrecord['watch_time'] ?></span>
                                    <div class="progress-box">
                                        <div class="progress pull-left">
                                            <div class="progress-bar" style="width: 60%;">

                                            </div>
                                        </div>
                                        <span class="pull-left"><?= $watchrecord['schedule'] ?>%</span>
                                    </div>
                                    <span class="study-time-all"><?= $watchrecord['watch_time'] ?></span>
                                    <span class="study-error"><?= $watchrecord['exception_record'] ?></span>

                                    <span class="sanjiao-icon icon-sort-desc"></span>
                                </div>
                                <?php endif ?>
                                <?php endforeach ?>   
                                <?php endif ?>
                            <?php endforeach ?>

                            </div>
                        </div>

                        <?php endif ?>


                    <?php endforeach ?>
                <?php endif ?>
                <?php endforeach ?>
                    </div>

                </div>
            </div>
            <?php endif ?>
        <?php endforeach ?>
        </div>
    <?php endif ?>
        <?php if($vipCourses == '0'): ?> 
        <div style="text-align: center; ">

            暂无结果

        </div>
        <?php endif ?>
        <div class="tab-pane">
    <?php if($publicCourses != 0): ?>

        <div class="tab-pane active">
            <div class="level-tips">
                在学<span>2</span>门课程,已学<span>1</span>门课程,累积时长<span>48</span>小时
            </div>
            <?php foreach($publicCourses as $key => $course): ?>
            <?php if(!empty($course)): ?>
            <div class="level-body">
                <div class="level-1">

                    <div class="level-1-title level-style">
                        <span><?= $course['name'] ?></span>
                        <div class="progress-box">
                            <span class="pull-left">进度:</span>
                            <div class="progress pull-left">
                                <div class="progress-bar" style="width: 60%;">
                                </div>
                            </div>
                            <span class="pull-left">60%</span>
                        </div>
                        <span>累积观看时长8小时</span>
                        <span>课时数据</span>
                        <span class="sanjiao-icon icon-sort-asc"></span>
                    </div>

                    <div class="level-1-body">
                    <?php foreach($course['period'] as $key1 => $period): ?>
                         <?php if(!empty($period)): ?>
                        <?php foreach($period['units'] as $key2 => $unit): ?>
                            <?php if(!empty($unit)): ?>
                            <div class="level-1-title level-style">
                                <span><?php echo $unit['name']; ?></span>
                                <div class="progress-box">
                                    <span class="pull-left">进度:</span>
                                    <div class="progress pull-left">
                                        <div class="progress-bar" style="width: 60%;">

                                        </div>
                                    </div>
                                        <span class="pull-left">60%</span>
                                </div>
                                <span>课时数据</span>
                                <span class="sanjiao-icon icon-sort-asc"></span>
                            </div>
                            <div class="level-1-body">
                                <div class="level-2-tips level-style">
                                    <span class="class-name">课时名称</span>
                                    <span class="IP-address">IP地址</span>
                                    <span class="borwser-type">浏览器</span>
                                    <span class="client-type">客户端</span>
                                    <span class="study-time">开始学习时间</span>
                                    <span style="width: 200px;padding-left: 20px;">进度</span>
                                    <span class="study-time-all">已观看</span>
                                    <span class="study-error">异常</span>
                                    <span class="icon-share"></span>
                                </div>
                            <div class="level-2">
                                <?php foreach($unit['lessons'] as $key2 => $lesson): ?>
                                    <?php if(!empty($lesson)): ?>

                                <?php foreach($lesson['watchrecord'] as $key3 => $watchrecord): ?>
                                    <?php if(!empty($watchrecord)): ?>
                                <div class="level-2-title level-style">
                                    <span class="class-name" title="啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦了"><?= $lesson['title'] ?>
                                    </span>

                                    <span class="IP-address"><?= $watchrecord['address'] ?></span>
                                    <span class="borwser-type"><?= $watchrecord['browser'] ?></span>
                                    <span class="client-type"><?= $watchrecord['client'] ?></span>
                                    <span class="study-time"><?= $watchrecord['watch_time'] ?></span>
                                    <div class="progress-box">
                                        <div class="progress pull-left">
                                            <div class="progress-bar" style="width: 60%;">

                                            </div>
                                        </div>
                                        <span class="pull-left"><?= $watchrecord['schedule'] ?>%</span>
                                    </div>
                                    <span class="study-time-all"><?= $watchrecord['watch_time'] ?></span>
                                    <span class="study-error"><?= $watchrecord['exception_record'] ?></span>

                                    <span class="sanjiao-icon icon-sort-desc"></span>
                                </div>
                                <?php endif ?>
                                <?php endforeach ?>   
                                <?php endif ?>
                            <?php endforeach ?>

                            </div>
                        </div>

                        <?php endif ?>


                    <?php endforeach ?>
                <?php endif ?>
                <?php endforeach ?>
                    </div>

                </div>
            </div>
             <?php endif ?>
        <?php endforeach ?>
        </div>


    <?php endif ?>
    </div>

</div>
<script type="text/javascript">

</script>
<script src="/plugins/dapeng/assets/js/user/watchRecord.js"> 
</script>


6、php通过路由传参的几种方式
(1)title = "dapeng"
url = "/search-users/:keyword"
layout = "default"
description = "dapeng index"

 
[searchComponent]
keyword  = "{{ :keyword }}"  此步骤是相当于$param  =explode('/',Request::getRequestUri()); $url = last($param);
似曾相识angularjs route
( 2 )
直接传参
title = "dapeng"
url = "/search-users"
layout = "default"
description = "dapeng index"

      未完待续......,
0 0
原创粉丝点击