DB::transaction(function () use ($request,$lesson) { //dd($request->toArray()); $lesson['l_title']=$request['l_title']; $lesson['l_introduce']=$request['l_introduce']; $lesson['l_preview']=$request['l_preview']; $lesson['l_is_commend']=$request['l_is_commend']; $lesson['l_is_hot']=$request['l_is_hot']; $lesson['l_click']=$request['l_click']; $lesson->save(); //dd($lesson['l_id']); //dd($lesson->toArray()); //二、插入標籤課程數據--關係表 $tags=$request['tags']; foreach ($tags as $tag){ $tag_lesson=[]; $tag_lesson['tl_t_id']=$tag; //$tag_lesson['tl_l_id']=$lesson['l_id']; //TagAndLesson::create($tag_lesson); //dd($tag_lesson); $lesson->hasManyLessonTags()->create($tag_lesson); } //videos數據過來的時候是json數據,true表示轉成數組而非對象 $videos=json_decode($request['videos'],true); //dd($videos); foreach ($videos as $video){ unset($video['v_id']); $lesson->videos()->create($video); // $lesson->videos()->create([ // 'title'=>$video['title'], // 'path'=>$video['path'], // ]); } });
<?php use Illuminate\Database\Seeder; class UsersTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { //產生faker實例 $faker=\Faker\Factory::create('zh_CN'); //循環生成數據 static $password; $data=[]; for ($i=0;$i<10;$i++){ $data[]=[ 'phone' => $faker->phoneNumber, 'password' => $password ?: $password=bcrypt('123456'), // secret 'email' => $faker->email, 'name' => $faker->name, 'created_at' => date('Y-m-d H:i:s',time()), 'updated_at' => date('Y-m-d H:i:s',time()), ]; } DB::table('users')->insert($data); } }
視圖端php
//課程的點贊收藏操做 $('.fa_like').click(function () { let l_id=$(this).attr('l_id'); let _this=$(this); //console.log(l_id); $.post("/like_lesson", {'l_id':l_id,'_token':'{{csrf_token()}}'} ,function (data) { console.log(data); if(parseInt(data.valid)==1){ _this.hide(); _this.parent().find('.fa_like_no').show(); layer_alert_success(data.message); }else{ layer_alert_fail(data.message); } }); });
控制器端html
//點贊課程 public function like_lesson(Request $request){ $back_data=[]; $back_data['valid']=0;//表示鏈接失敗 $back_data['message']=''; //dd($request->all()); $ll_l_id=$request->input('l_id'); //獲取登陸的用戶id $ll_u_id=Auth::guard('user')->user()->id; $data=[]; $data['ll_l_id']=$ll_l_id; $data['ll_u_id']=$ll_u_id; $ans=LikeLesson::insert($data); if($ans){ //驗證碼錯誤 $back_data['valid']=1;//表示驗證碼錯誤 $back_data['message']='點同意功!'; return $back_data; }else{ $back_data['valid']=0;//表示手機驗證碼發送成功 $back_data['message']='點贊失敗!'; } return $back_data; }
<script> let vue_{{$comment_list_id}}=new Vue({ el: '#comment_list_{{$comment_list_id}}', data: { comment_list: window.{{$comment_list_id}}, }, methods:{ ts_to_time:function(ts){ return timestampToTime(ts*1000); } } }) </script>
//一、能夠先對數組按照時間戳來由大到小排序(由於優先顯示近期的,) usort($question_list, array('App\Model\Admin\ChooseQuestion\Timeline\GroupByTimeline',"cmp_question_collected")); //一、按照題目的收藏時間由大到小排序 public static function cmp_question_collected($a, $b) { if ($a['uq_collected_time'] == $b['uq_collected_time']) { return ($a['uq_id'] > $b['uq_id']) ? -1 : 1; } return ($a['uq_collected_time'] > $b['uq_collected_time']) ? -1 : 1; }
<script> let vue_{{$comment_list_id}}=new Vue({ el: '#comment_list_{{$comment_list_id}}', data: { comment_list: window.{{$comment_list_id}}, lesson_comment_ids:window.lesson_comment_ids, }, methods:{ ts_to_time:function(ts){ return timestampToTime(ts*1000); }, like_comment:function (cl_id) { return 1+parseInt(this.lesson_comment_ids.indexOf(cl_id)); } } }) //console.log(vue_{{$comment_list_id}}.comment_list); console.log(vue_{{$comment_list_id}}.lesson_comment_ids); </script>
{{--小屏幕端的時候去除 內容中container 的左右縮進--}} <script> function remove_container() { if($(window).width()>720){ $('#content_container').addClass('container'); }else{ $('#content_container').removeClass('container'); } $('#content_wrapper').show(); } remove_container(); $(function () { $(window).on('resize', function() { //console.log("寬度改變了!"); //console.log($(window).width()); remove_container(); }).resize(); // window.onresize=function(){ // //console.log("寬度改變了!"); // remove_container(); // } }); </script>
視圖端vue
{{--post請求提交表單信息--}} <script> function submit_update_info(){ var data = {}; var t = $('#do_update_info_form').serializeArray(); $.each(t, function() { data [this.name] = this.value; }); //console.log(JSON.stringify(data )); $.post("/do_update_info", {'data':data,'_token':'{{csrf_token()}}'} ,function (data) { //console.log(data); if(parseInt(data.valid)==1){ layer_alert_success_mobile(data.message); //操做成功,兩秒後自動跳轉到XX界面
//layer_mobile_success_jump(data.message,3,'我的中心','{{url('/my')}}');
}else{ layer_alert_fail_mobile(data.message); } }); } </script>
控制器端ajax
public function do_update_info(Request $request){ $back_data=[]; $back_data['valid']=0;//表示鏈接失敗 $back_data['message']=''; //dd($request->all()); $data=$request->input('data'); //dd($data); $name_length=mb_strlen(trim($data['u_name']),'utf8'); if($name_length>10){ $back_data['valid']=0; $back_data['message']='暱稱的字符數不能超過10個'; return $back_data; } $motto_length=mb_strlen(trim($data['u_motto']),'utf8'); if($motto_length>100){ $back_data['valid']=0; $back_data['message']='個性簽名 的字符數不能超過100個'; return $back_data; } if($name_length) $name=$data['u_name']; if($motto_length) $motto=$data['u_motto']; $picture=$data['u_picture']; $u_id=Auth::guard('user')->user()->id; $user=Auth::guard('user')->user(); //修改用戶信息 if(isset($name)) $user->name=$name; if(isset($motto)) $user->motto=$motto; $user->picture=$picture; $ans=$user->save(); if($ans){ $back_data['valid']=1; $back_data['message']='操做成功!'; return $back_data; }else{ $back_data['valid']=0; $back_data['message']='操做失敗!'; } return $back_data; //dd($user); }