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 相关文章推荐
理解PHP5中static和const关键字的区别
Mar 19 PHP
PHP程序员最常犯的11个MySQL错误小结
Nov 20 PHP
Zend Framework中的简单工厂模式 图文
Jul 10 PHP
php中使用redis队列操作实例代码
Feb 07 PHP
ThinkPHP利用PHPMailer实现邮件发送实现代码
Sep 26 PHP
PHP开发框架Laravel数据库操作方法总结
Sep 03 PHP
php实现发送微信模板消息的方法
Mar 07 PHP
PHP概率计算函数汇总
Sep 13 PHP
各种快递查询--Api接口
Apr 26 PHP
yii2实现分页,带搜索的分页功能示例
Jan 07 PHP
解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory
Feb 25 PHP
[原创]php正则删除html代码中class样式属性的方法
May 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
详解PHP的Yii框架中组件行为的属性注入和方法注入
2016/03/18 PHP
PHP实现上传多文件示例代码
2017/02/20 PHP
JS(jQuery)实现聊天接收到消息语言自动提醒功能详解【提示“您有新的消息请注意查收”】
2019/04/16 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
2019/10/11 PHP
Google韩国首页图标动画效果
2007/08/26 Javascript
jquery URL参数判断,确定菜单样式
2010/05/31 Javascript
javascript事件冒泡详解和捕获、阻止方法
2014/04/12 Javascript
Node.js入门教程:在windows和Linux上安装配置Node.js图文教程
2014/08/14 Javascript
JavaScript中this详解
2015/09/01 Javascript
angular.bind使用心得
2015/10/26 Javascript
jQuery ajax方法传递中文时出现中文乱码的解决方法
2016/07/25 Javascript
详解AngularJS中$filter过滤器使用(自定义过滤器)
2017/02/04 Javascript
jQuery EasyUI 组件加上“清除”功能实例详解
2017/04/11 jQuery
微信小程序中使用Promise进行异步流程处理的实例详解
2017/08/17 Javascript
JS计算输出100元钱买100只鸡问题的解决方法
2018/01/04 Javascript
JS实现的合并多个数组去重算法示例
2018/04/11 Javascript
vue和webpack安装命令详解
2018/06/15 Javascript
AngularJS实现的鼠标拖动画矩形框示例【可兼容IE8】
2019/05/17 Javascript
vue组件中实现嵌套子组件案例
2020/08/31 Javascript
[02:56]DOTA2上海特锦赛小组赛解说FreeAgain采访花絮
2016/02/27 DOTA
Python中字符串的格式化方法小结
2016/05/03 Python
Python3.6简单操作Mysql数据库
2017/09/12 Python
python使用Flask操作mysql实现登录功能
2018/05/14 Python
Python实现的网页截图功能【PyQt4与selenium组件】
2018/07/12 Python
python设置环境变量的作用和实例
2019/07/09 Python
利用Python实现Excel的文件间的数据匹配功能
2020/06/16 Python
Python对excel的基本操作方法
2021/02/18 Python
如何用H5实现一个触屏版的轮播器的实例
2017/01/09 HTML / CSS
ShellScript面试题一则-ShellScript编程
2014/06/24 面试题
期终自我鉴定
2014/02/17 职场文书
竞选村长演讲稿
2014/04/28 职场文书
司机岗位职责说明书
2014/07/29 职场文书
党政领导班子群众路线对照检查材料
2014/10/26 职场文书
党风廉正建设责任书
2015/01/29 职场文书
React列表栏及购物车组件使用详解
2021/06/28 Javascript
MySQL连接控制插件介绍
2021/09/25 MySQL