Laravel框架实现简单的学生信息管理平台案例


Posted in PHP onMay 07, 2019

本文实例讲述了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框架实现简单的学生信息管理平台案例

详情页面

Laravel框架实现简单的学生信息管理平台案例

修改页面

Laravel框架实现简单的学生信息管理平台案例

Laravel框架实现简单的学生信息管理平台案例

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

PHP 相关文章推荐
如何实现给定日期的若干天以后的日期
Oct 09 PHP
PHP与MySQL开发中页面出现乱码的一种解决方法
Jul 29 PHP
php中计算中文字符串长度、截取中文字符串的函数代码
Aug 09 PHP
PHP反射机制用法实例
Aug 28 PHP
php使用memcoder将视频转成mp4格式的方法
Mar 12 PHP
php上传功能集后缀名判断和随机命名(强力推荐)
Sep 10 PHP
php同时使用session和cookie来保存用户登录信息的实现代码
May 13 PHP
PHP转换文本框内容为HTML格式的方法
Jul 20 PHP
php微信公众号js-sdk开发应用
Nov 28 PHP
php中的异常和错误浅析
May 03 PHP
PHP大文件分割上传 PHP分片上传
Aug 28 PHP
laravel 查询数据库获取结果实现判断是否为空
Oct 24 PHP
Laravel框架Request、Response及Session操作示例
May 06 #PHP
thinkphp5框架扩展redis类方法示例
May 06 #PHP
PHP5.6.8连接SQL Server 2008 R2数据库常用技巧分析总结
May 06 #PHP
PHP实现百度人脸识别
May 06 #PHP
PHP7使用ODBC连接SQL Server2008 R2数据库示例【基于thinkPHP5.1框架】
May 06 #PHP
PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
May 06 #PHP
php + WebUploader实现图片批量上传功能
May 06 #PHP
You might like
使用PHPExcel操作Excel用法实例分析
2015/03/26 PHP
再谈Yii Framework框架中的事件event原理与应用
2020/04/07 PHP
JS的递增/递减运算符和带操作的赋值运算符的等价式
2007/12/08 Javascript
jQuery EasyUI API 中文文档 - DataGrid数据表格
2011/11/17 Javascript
extjs 分页使用jsp传递数据示例
2014/07/29 Javascript
html的DOM中document对象forms集合用法实例
2015/01/21 Javascript
jQuery中$.each使用详解
2015/01/29 Javascript
jquery实现自适应banner焦点图
2017/02/16 Javascript
关于ES6的六个小特性(二)
2017/02/20 Javascript
React Native验证码倒计时工具类分享
2017/10/24 Javascript
Vue导出json数据到Excel电子表格的示例
2017/12/04 Javascript
解决iview打包时UglifyJs报错的问题
2018/03/07 Javascript
在vue项目中使用sass的配置方法
2018/03/20 Javascript
VUE 3D轮播图封装实现方法
2018/07/03 Javascript
element-ui使用导航栏跳转路由的用法详解
2018/08/22 Javascript
详解jenkins自动化部署vue
2019/05/14 Javascript
JS中FileReader类实现文件上传及时预览功能
2020/03/27 Javascript
javascript中的offsetWidth、clientWidth、innerWidth及相关属性方法
2020/05/14 Javascript
微信小程序开发之获取用户手机号码(php接口解密)
2020/05/17 Javascript
[07:57]DOTA2热力大趴狂欢夜 广州站活动回顾
2013/11/27 DOTA
深入理解Python中的*重复运算符
2017/10/28 Python
对Python字符串中的换行符和制表符介绍
2018/05/03 Python
python后端接收前端回传的文件方法
2019/01/02 Python
详解python实现小波变换的一个简单例子
2019/07/18 Python
英国第一蛋白粉品牌:Myprotein
2016/09/14 全球购物
编写类String 的构造函数、析构函数和赋值函数
2012/09/09 面试题
本科生求职简历的自我评价
2013/10/21 职场文书
银行会计业务的个人自我评价
2013/11/02 职场文书
车工岗位职责
2013/11/26 职场文书
机关财务管理制度
2014/01/17 职场文书
槐乡的孩子教学反思
2014/04/27 职场文书
2014年党的群众路线教育实践活动整改措施(个人版)
2014/09/25 职场文书
2014法制宣传日活动总结范文
2014/11/01 职场文书
2015年毕业生实习评语
2015/03/25 职场文书
企业财务人员岗位职责
2015/04/14 职场文书
运动员入场词
2015/07/18 职场文书