Laravel框架实现简单的学生信息管理平台案例【附源码下载】

所属分类: 网络编程 / PHP编程 阅读数: 1461
收藏 0 赞 0 分享

本文实例讲述了Laravel框架实现简单的学生信息管理平台。分享给大家供大家参考,具体如下:

laravel框架写的简易版的学生信息管理平台,贯穿了laravel的控制器、视图、模板、模型、中间件、路由规则的使用。

页面是使用BootStrap前端框架搭建

使用laravel实现了增删改查的功能。

代码下载链接在文章底部。

//这是路由文件的关键代码
Route::group(['middleware' => ['web']], function () {
  Route::get('student/index',['uses'=>'StudentController@index']);
  Route::any('student/create',['uses'=>'StudentController@create']);
  Route::post('student/save',['uses'=>'StudentController@save']);
  Route::any('student/update/{id}',['uses'=>'StudentController@update']);
  Route::any('student/detail/{id}',['uses'=>'StudentController@detail']);
  Route::any('student/delete/{id}',['uses'=>'StudentController@delete']);
});

//控制器文件的关键代码,增删改查
class StudentController extends Controller{
  //学生列表
  public function index(){
    $students = Student::paginate(20);
    //dd($students);
    return view('student.index',[
      'students'=>$students,
    ]);
  }
  //新增页面
  public function create(Request $request){
    $student = new Student();
    if($request->isMethod('POST')){
      //1.控制器验证
      /*$this->validate($request,[
        'Student.name'=>'required|min:2|max:20',
        'Student.age' =>'required|integer',
        'Student.sex' =>'required|integer',
      ],[
        'required'=>':attribute 为必填项',
        'min'=>':attribute长度不符合要求',
        'integer'=>':attribute必须为整数',
      ],[
        'Student.name'=>'姓名',
        'Student.age' =>'年龄',
        'Student.sex' =>'性别'
      ]);*/
      //2.Validator类验证
      $validator = \Validator::make($request->input(),[
        'Student.name'=>'required|min:2|max:20',
        'Student.age' =>'required|integer',
        'Student.sex' =>'required|integer',
      ],[
        'required'=>':attribute 为必填项',
        'min'=>':attribute长度不符合要求',
        'integer'=>':attribute必须为整数',
      ],[
        'Student.name'=>'姓名',
        'Student.age' =>'年龄',
        'Student.sex' =>'性别'
      ]);
      //withInput保持数据
      if($validator->fails()){
        return redirect()->back()->withErrors($validator)->withInput();
      }
      $data = $request->input('Student');
      if(Student::create($data)){
        return redirect('student/index')->with('success','添加成功');
      }else{
        return redirect()->back();
      }
    }
    return view('student.create',[
      'student'=>$student,
    ]);
  }
  //保存数据操作
  public function save(Request $request){
    $data = $request->input('Student');
    $student = new Student();
    $student->name = $data['name'];
    $student->age = $data['age'];
    $student->sex = $data['sex'];
    if($student->save()){
      return redirect('student/index');
    }else{
      return redirect()->back();
    }
  }
  //更新数据操作
  public function update(Request $request,$id){
    $student = Student::find($id);
    if($request->isMethod('POST')){
      //Validator类验证
      $validator = \Validator::make($request->input(),[
        'Student.name'=>'required|min:2|max:20',
        'Student.age' =>'required|integer',
        'Student.sex' =>'required|integer',
      ],[
        'required'=>':attribute 为必填项',
        'min'=>':attribute长度不符合要求',
        'integer'=>':attribute必须为整数',
      ],[
        'Student.name'=>'姓名',
        'Student.age' =>'年龄',
        'Student.sex' =>'性别'
      ]);
      //withInput保持数据
      if($validator->fails()){
        return redirect()->back()->withErrors($validator)->withInput();
      }
      $data = $request->input('Student');
      $student->name = $data['name'];
      $student->age = $data['age'];
      $student->sex = $data['sex'];
      if($student->save()){
        return redirect('student/index')->with('success','修改成功-'.$id);
      }
    }
    return view('student.update',[
      'student'=>$student,
    ]);
  }
  //信息详情
  public function detail($id){
    $student = Student::find($id);
    return view('student.detail',[
      'student'=>$student,
    ]);
  }
  //删除操作
  public function delete($id){
    $student = Student::find($id);
    if($student->delete()){
      return redirect('student/index')->with('success','删除成功-'.$id);
    }else{
      return redirect('student/index')->with('error','删除失败-'.$id);
    }
  }
}

下面是效果展示

学生列表页

新增页面

详情页面

修改页面

完整实例代码点击此处本站下载

更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

更多精彩内容其他人还在看

PHP setTime 设置当前时间的代码

在用JAVA中有个 Calendar 可设置当前时间,在PHP中找了半天,终于给我找到了这个函数,嘎嘎
收藏 0 赞 0 分享

PHP 图片水印类代码

这个类功能很强大,细节很棒!希望大家喜欢,并积极指点
收藏 0 赞 0 分享

PHP实现手机归属地查询API接口实现代码

主要使用curl实现,需要开启php对curl的支持
收藏 0 赞 0 分享

php 解决旧系统 查出所有数据分页的类

不同之处在于 没有实现分页的系统, 默认全部查出来 现在就要不能动后台的基础上进行操作 可以采用 相应的 如下 代码
收藏 0 赞 0 分享

PHP的简易冒泡法代码分享

基础的东西,感觉代码还不够简洁,希望高手指导修改,脚本之家特为大家多准备了几个,方便测试学习
收藏 0 赞 0 分享

PHP 利用AJAX获取网页并输出的实现代码(Zjmainstay)

PHP 利用AJAX获取网页并输出的实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

php数组一对一替换实现代码

以下方法能实现匹配关键词并分别对关键词做特殊处理的功能,需要的朋友可以参考下
收藏 0 赞 0 分享

关于UEditor编辑器远程图片上传失败的解决办法

因为单纯喜欢 UEditor 的界面,于是把项目中原先的编辑器进行的替换,但在后续操作中发现一些问题,就是远程图片上传
收藏 0 赞 0 分享

Windows下部署Apache+PHP+MySQL运行环境实战

本来嘛,部署PHP没什么复杂,找各种版本着实头疼了一下。
收藏 0 赞 0 分享

比较discuz和ecshop的截取字符串函数php版

网上看到一篇文章 discuz和ecshop截取字符串的两个函数,比较了一下两个版本的函数,都各有局限,只能在特定的前提下使用,但是学习一下有利于拓宽思路,了解PHP的扩展功能
收藏 0 赞 0 分享
查看更多