laravel框架 路由和表单数据传输 数据库

Posted 不吃肉的羊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了laravel框架 路由和表单数据传输 数据库相关的知识,希望对你有一定的参考价值。

设置路由:

use IlluminateSupportFacadesRoute;
//设置路由访问控制器只能是get访问
// Route::get(‘/user‘,‘User@user‘);
// Route::get(‘/‘,function(){
//     return ‘hello world‘;
// });

// 请求方式 只能用post
// Route::post(‘/‘,‘User@user‘);

//可以设置多个请求方式
// Route::match([‘get‘,‘post‘],‘/‘,‘User@user‘);

//可以使用任何方式进行访问
// Route::any(‘/‘,‘User@user‘);

//路由别名
Route::any(‘/‘,‘User@user‘)->name(‘shouye‘);
Route::any(‘/d‘,‘User@dbo‘);

//使用route获取地址 并且用redirect跳转
Route::any(‘/tzh‘,function(){
    return redirect()->route(‘shouye‘);
});

//路由组
// Route::group([‘prefix‘=>‘admin‘],function(){
//     Route::any(‘/a‘,‘User@user‘);
// });

//加载视图文件
Route::any(‘/view‘,function(){
    return view(‘welcome‘);
});
表单数据传输和操作数据库:
use IlluminateHttpRequest;
use IlluminateSupportFacadesDB;
use IlluminateSupportFacadesInput ;

class User extends Controller
{
    public function user( Request $request)
    {
        // return ‘控制器‘;
        if($_POST){
            /**
             * 用request接受
             */
            //获取所有数据
            // var_dump($request->all());
            //获取单个用户的数据 后面是默认值 不写的话就是获取单条数据
            var_dump($request->input(‘title‘,‘zhangsan‘));
            /**
             * 用input接受
             */
            // 如果参数没有被传递使用该默认值,也可以不写默认值就是只获取一个用户输入的内容
            // var_dump(Input::get(‘titlee‘,‘张三‘));
            // 获取所有的用户的输入
            // var_dump(Input::all());
            // 获取指定几个用户的输入
            // var_dump(Input::only([‘title‘,‘lizi‘]));
            // 获取指定几个用户的输入以外的所有的参数
            // var_dump(Input::except([‘title‘]));
            // 判断某个输入的参数是否存在
            // var_dump(Input::has(‘name‘));

        }
    }
    public function dbo()
    {
        //实例化数据库类 这个样可以快速引入db这个类
        // new db

        // 添加数据
        // $arr=[
        //     ‘title‘=>‘laravel‘
        // ];
        // 这是添加多条数据
        // $arr=[
        //     [‘title‘=>‘laravel1‘],
        //     [‘title‘=>‘laravel2‘]
        // ];
        // Db::table(‘product‘)->insert($arr);
        //添加后获取id值
        // $id=Db::table(‘product‘)->insertGetId($arr);

        //更新数据
        // $arr=[
        //     ‘price‘=>‘11‘
        // ];
        // Db::table(‘product‘)->where(‘id‘,14)->update($arr);

        //字段自增
        // Db::table(‘product‘)->where(‘id‘,14)->increment(‘price‘);
        //字段自减
        // Db::table(‘product‘)->where(‘id‘,14)->decrement(‘price‘);

        //查询数据 使用get来查
        // $list=DB::table(‘product‘)->get();
        // foreach($list as $val){
        //     echo $val->id.‘<br>‘;
        // }

        //查询数据 单条
        // $info=Db::table(‘product‘)->where(‘id‘,5)->first();
        // dd($info->title);
        
        //取某一行的某一个值
        db::table(‘product‘)->where(‘id‘,5)->value(‘title‘);

        //获取某些字段
        db::table(‘product‘)->where(‘id‘,5)->select(‘title‘,‘id‘)->get();
    }
}

以上是关于laravel框架 路由和表单数据传输 数据库的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript 表单使用 Ajax 和 Laravel 路由提交到数据库

php中laravel框架的控制器如何获取路由传过来的可选参数?

Laravel 表单路由未定义

laravel 表单生成错误的操作 url / 路由错误

如何在Laravel 5.2中将表单数据作为路由参数传递

在 laravel 6 中以 post 方法发送表单数据给出错误,因为该路由不支持 POST 方法。支持的方法:GET、HEAD