• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

PHP使用Laravel框架编程实现问卷调查系统并且实现批量删除功能(1+X Web前端开发级 例题)

武飞扬头像
黛琳ghz
帮助4

📄题目要求

  • 阅读下列说明、效果图和代码,进行动态网页开发,回答问题1至问题4。

🧩说明

  • 该程序为一个问卷调查系统,使用PHP的Laravel框架编程,项目名称为XXX,核心文件包括路由文件web.php、模板文件(信息展示模板news.blade.php)、控制器文件newscontroller.php。实现批量删除功能。
  • 基于Laravel框架,回答下列问题,填写(1)至(10)。

🧩效果图

  • 信息展示模板页面:对应模板文件news.blade.php

  • 先选中需要删除的数据,点击“批量删除”按钮,如下图所示。

学新通

💻PHP代码 问题

1️⃣web.php

  1.  
    <?php
  2.  
    Route::get('/', function () {
  3.  
    return view('welcome');
  4.  
    });
  5.  
     
  6.  
    // 后台首页
  7.  
    Route::___(1)_ ___(['namespace'=>'Admin','prefix'=>'admin'],function(){
  8.  
    // 后台商品管理模块
  9.  
    Route::resource('goods','GoodsController');
  10.  
    Route::get('news_ajax',"Newscontroller@aajax");
  11.  
     
  12.  
    });

2️⃣GoodsController.php

  • 将数据库中的数据展示到news.blade.php文件上,请根据页面目录结构并分析代码,填写(2)-(4)
  1.  
    <?php
  2.  
    namespace App\Http\Controllers\admin;
  3.  
    use App\Http\Controllers\Controller;
  4.  
    use Illuminate\Http\Request;
  5.  
    use DB;
  6.  
     
  7.  
    class Newscontroller extends Controller{
  8.  
    public function aajax(){
  9.  
     
  10.  
    //获取到ajax传来的需要删除的id
  11.  
    $id = $_GET['str'];
  12.  
    //把传来的所有id改为数组形式 explode 字符串转数组
  13.  
    $str = __(5)__ _(",",$id);
  14.  
    //利用循环将需要删除的id 一个一个进行执行sql;
  15.  
    foreach($str as $v){
  16.  
    DB::delete(“delete from product where id=?”,[$v]);
  17.  
    DB::table('product')->_ ___(6)______->delete();//删除数据的条件
  18.  
    }
  19.  
    ___(7)_____;//返回删除的数据id
  20.  
    }
  21.  
    }

3️⃣Newscontroller.php

  • 当点击‘批量删除’时,需要请求一个地址从数据库中删除选中的数据。分析相关的控制器文件和模板文件,填写(5)-(7)
  1.  
    USE info_manage;
  2.  
    alter table news add newtype int(4) after title;

4️⃣信息展示模板news.blade.php

  • 在信息展示模板文件news.blade.php中,使用for循环显示信息,显示需要数据由GoodsController类中index()返回时传递,点击‘批量删除按钮’,批量删除选中的数据,分析index()方法和模板文件,填写(8)-(10)。

  1.  
    _____(8)____('muban.admin')
  2.  
    @section('content')
  3.  
    <div class="content">
  4.  
    <table>
  5.  
    ____(9)_ __
  6.  
    <tr>
  7.  
    <td align="center">
  8.  
    <input type="checkbox" name="box" value="{{$v->id}}" class="box"/>
  9.  
    </td>
  10.  
    <td>{{$v->id}}</td>
  11.  
    <td>{{$v->title}}</td>
  12.  
    <td>{{$v->pric}}</td>
  13.  
    <td>删除</td>
  14.  
    <tr>
  15.  
     
  16.  
    @endforeach
  17.  
    </table>
  18.  
    <input type="button" value="批量删除" id="but">
  19.  
    </div>
  20.  
    <script>
  21.  
     
  22.  
    $("#but").click(function(){
  23.  
    //获取到所有的input
  24.  
    var box = $("input[name='box']");
  25.  
    //去所有的input长度
  26.  
    length =box.length;
  27.  
    // alert(length);
  28.  
    var str ="";
  29.  
    for(var i=0;i<length;i ){
  30.  
    //如果数组中的checked 为true 就将他的id进行拼接
  31.  
    if(box[i].checked==true){
  32.  
    str =str "," box[i].value;
  33.  
    }
  34.  
    }
  35.  
    //将拼接的字符串第一个,号删除
  36.  
    str= str.substr(1);
  37.  
     
  38.  
    //ajax 将id传入后台
  39.  
    $.ajax({
  40.  
    url:"______(10)__{{url(“admin/ news_ajax”)}}___",
  41.  
    type:"get",
  42.  
    data:{str:str},
  43.  
    success:function (a) {
  44.  
    a.forEach(function(ele){
  45.  
    $("input").each(function(){
  46.  
    if($(this).val()==ele){
  47.  
    $(this).parents("tr").remove();
  48.  
    }
  49.  
    })
  50.  
    })
  51.  
    }
  52.  
    })
  53.  
    })
  54.  
     
  55.  
    </script>
  56.  
    @endsection

🎯实现效果

📰完整答案

试题四(20分)
【问题】(20分)
(1)group
(2)App\Http\Controllers\Admin
(3)use DB
(4)with
(5)explode
(6)where('id',"=","$v")
(7)return $str
(8)@extends
(9)@foreach($data as $v)
(10){{url('admin/news_ajax')}}
(每空2分,共20分)


🎯点赞收藏,防止迷路🔥 


学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgaeghb
系列文章
更多 icon
同类精品
更多 icon
继续加载