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
PHP4之COOKIE支持详解
Oct 09 PHP
一步一步学习PHP(6) 面向对象
Feb 16 PHP
上传文件先创建目录 再上传到目录里面去
Dec 29 PHP
浅析php变量作用域的一些问题
Aug 08 PHP
php生成随机字符串可指定纯数字、纯字母或者混合的
Apr 18 PHP
php实现的百度搜索某地天气的小偷代码
Apr 23 PHP
PHP遍历XML文档所有节点的方法
Mar 12 PHP
PHP实现生成唯一会员卡号
Aug 24 PHP
php简单日历函数
Oct 28 PHP
PHP的PDO预处理语句与存储过程
Jan 27 PHP
tp5框架基于ajax实现异步删除图片的方法示例
Feb 10 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 生成N个不重复的随机数
2015/01/21 PHP
PHP运行模式汇总
2016/11/06 PHP
JS对URL字符串进行编码/解码分析
2008/10/25 Javascript
JavaScript 数组运用实现代码
2010/04/13 Javascript
jquery 的 $("#id").html() 无内容的解决方法
2010/06/07 Javascript
基于JQuery实现异步刷新的代码(转载)
2011/03/29 Javascript
Table冻结表头示例代码
2013/08/20 Javascript
javascript 表格内容排序 简单操作示例代码
2014/01/03 Javascript
jQuery select表单提交省市区城市三级联动核心代码
2014/06/09 Javascript
js创建对象的区别示例介绍
2014/07/24 Javascript
javascript连续赋值问题
2015/07/08 Javascript
Jquery简单分页实现方法
2015/07/24 Javascript
javascript判断图片是否加载完成的方法推荐
2016/05/13 Javascript
JS实现随机颜色的3种方法与颜色格式的转化
2017/01/05 Javascript
尝试自己动手用react来写一个分页组件(小结)
2018/02/09 Javascript
vue中axios的封装问题(简易版拦截,get,post)
2018/06/15 Javascript
vue项目中全局引入1个.scss文件的问题解决
2019/08/01 Javascript
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
2019/08/15 Javascript
vuex state中的数组变化监听实例
2019/11/06 Javascript
nodejs开发一个最简单的web服务器实例讲解
2020/01/02 NodeJs
解决小程序无法触发SESSION问题
2020/02/03 Javascript
python使用htmllib分析网页内容的方法
2015/05/08 Python
python3.x上post发送json数据
2018/03/04 Python
对numpy中布尔型数组的处理方法详解
2018/04/17 Python
详解django的serializer序列化model几种方法
2018/10/16 Python
python添加模块搜索路径和包的导入方法
2019/01/19 Python
详解python3 + Scrapy爬虫学习之创建项目
2019/04/12 Python
python time.sleep()是睡眠线程还是进程
2019/07/09 Python
Python 实现加密过的PDF文件转WORD格式
2020/02/04 Python
Python常用GUI框架原理解析汇总
2020/12/07 Python
分享CSS3中必须要知道的10个顶级命令
2012/04/26 HTML / CSS
健身场所或家用健身设备:Life Fitness
2017/11/01 全球购物
机电一体化应届生求职信范文
2014/01/24 职场文书
2015社区爱国卫生工作总结
2015/04/21 职场文书
2016学校先进党组织事迹材料
2016/02/29 职场文书
Nginx的反向代理实例详解
2021/03/31 Servers