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 相关文章推荐
珊瑚虫IP库浅析
Feb 15 PHP
php学习之function的用法
Jul 14 PHP
九个你必须知道而且又很好用的php函数和特点
Aug 08 PHP
THINKPHP内容分页代码分享
Jan 14 PHP
PHP Hash算法:Times33算法代码实例
May 13 PHP
php curl抓取网页的介绍和推广及使用CURL抓取淘宝页面集成方法
Nov 30 PHP
php简单实现多语言切换的方法
May 09 PHP
理解php依赖注入和控制反转
May 11 PHP
php利用递归实现删除文件目录的方法
Sep 23 PHP
PHP jQuery+Ajax结合写批量删除功能
May 19 PHP
php依赖注入知识点详解
Sep 23 PHP
php+ajax实现文件切割上传功能示例
Mar 03 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
十大“创意”战术!
2020/03/04 星际争霸
laravel 4安装及入门图文教程
2014/10/29 PHP
php实现算术验证码功能
2018/12/05 PHP
javascript实现轮显新闻标题链接
2007/08/13 Javascript
监控 url fragment变化的js代码
2010/04/19 Javascript
15款优秀的jQuery导航菜单插件分享
2011/07/19 Javascript
Textarea与懒惰渲染实现代码
2012/01/04 Javascript
jquery通过select列表选择框对表格数据进行过滤示例
2014/05/07 Javascript
简单的jQuery入门指引
2015/07/28 Javascript
基于HTML5上使用iScroll实现下拉刷新,上拉加载更多
2016/05/21 Javascript
一句jQuery代码实现返回顶部效果(简单实用)
2016/12/28 Javascript
jQuery实现字体颜色渐变效果的方法
2017/03/29 jQuery
Angularjs验证用户输入的字符串是否为日期时间
2017/06/01 Javascript
vue页面使用阿里oss上传功能的实例(一)
2017/08/09 Javascript
红黑树的插入详解及Javascript实现方法示例
2018/03/26 Javascript
JQuery Ajax动态加载Table数据的实例讲解
2018/08/09 jQuery
详解小程序缓存插件(mrc)
2018/08/17 Javascript
Element input树型下拉框的实现代码
2018/12/21 Javascript
在mpvue框架中使用Vant WeappUI组件库的注意事项【推进】
2019/06/09 Javascript
vue实现倒计时获取验证码效果
2020/04/17 Javascript
详解Django缓存处理中Vary头部的使用
2015/07/24 Python
Python Web框架Tornado运行和部署
2020/10/19 Python
总结python实现父类调用两种方法的不同
2017/01/15 Python
windows下python和pip安装教程
2018/05/25 Python
python 实现二维列表转置
2019/12/02 Python
python实现12306登录并保存cookie的方法示例
2019/12/17 Python
Python3 webservice接口测试代码详解
2020/06/23 Python
Python实现Appium端口检测与释放的实现
2020/12/31 Python
利用css3制作3D样式按钮实现代码
2013/03/18 HTML / CSS
夜大毕业生自我鉴定
2013/10/31 职场文书
大学生学期个人总结
2015/02/12 职场文书
给领导敬酒词
2015/08/12 职场文书
小学体育跳绳课教学反思
2016/02/16 职场文书
使用springMVC所需要的pom配置
2021/09/15 Java/Android
Vue.Draggable实现交换位置
2022/04/07 Vue.js
使用CSS自定义属性实现骨架屏效果
2022/06/21 HTML / CSS