laravel基础课程---10、数据库基本操作(如何使用数据库)

一、总结

一句话总结:

1、链接数据库:.env环境配置里面
2、执行数据库操作:DB::table('users')->update(['votes' => 1]);
1、链接数据库(D:\laravel\yzmedu\yzm2\.env)
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=yzm
DB_USERNAME=root
DB_PASSWORD=123

1、laravel数据库操作中的原生SQL语句?

根目录DB::下的(select、delete、insert、update方法)
运行声明:比如创建一个数据库:\DB::statement("create database yzmedu");
1、查询数据

    $data=\DB::select('select * from  user');

2、删除数据
如果删除成功 返回影响行数、
var_dump(\DB::delete('delete from user where id>5')); 3、增加数据
返回值bool 如果成功 true 失败 false
var_dump(\DB::insert("insert into user values(null,'123','123',0,'23131321')"));
4、修改数据
返回值 影响行数
var_dump(\DB::update('update user set name="帅哥" where id>3')); 5、运行一段命令 \DB::statement("create database yzmedu");
\DB::statement("drop database yzmedu"); 6、事物机制 \DB::beginTransaction(); 删除id=1数据 $a=\DB::delete("delete from user where id=1");
删除id=10数据
$b=\DB::delete("delete from user where id=11"); if ($a && $b) {
# code...
提交事务
\DB::commit();
}else{
回滚事务
\DB::rollback();
}

2、laravel中的事务机制如何实现?

自动事务:DB::transaction(function () {
手动事务:和tp一样:\DB::beginTransaction(); \DB::commit(); \DB::rollback();

自动事务

DB::transaction(function () {
DB::table('users')->update(['votes' => 1]); DB::table('posts')->delete();
});

手动事务

6、事物机制

    \DB::beginTransaction();

     删除id=1数据

    $a=\DB::delete("delete from user where id=1");
删除id=10数据
$b=\DB::delete("delete from user where id=11"); if ($a && $b) {
# code...
提交事务
\DB::commit();
}else{
回滚事务
\DB::rollback();
}

3、laravel实现侧边栏你选哪一个那个就展开的效果?

可以获取url中的路由,然后根据路由用js判断哪一个展开:主要利用SERVER数组

4、如何实现登录成功返回原页面?

记录原页面的地址【SERVER数组里有】,登录之后,跳转到这样地址

5、laravel中文件上传的实质是什么?

move函数:将文件从临时目录移动到了我们需要放它的目录

6、laravel中ajax删除图片实例?

ajax请求是jquery完成的:注意表单请求要加上_token变量
控制器中不必判断是不是ajax请求:正常request对象获取参数即可
1、JQ
// obj,id 接收参数
function del(obj,id){ // 发送ajax请求 // $.post(请求地址,传递参数,响应请求);
// data可以随便命名 主要接收ajax返回的数据 $.post('/admin/pic/'+id,{'id':id,'_method':'delete','_token':'{{ csrf_token() }}'},function(data){ // 判断接收的数据如果1成功 0失败 if (data) { // 移除对应删除的数据 $(obj).parent().parent().remove(); // 获取总数条数
tot=Number($("#tot").html()); // 修改总数据条数
$("#tot").html(--tot); }else{
alert('删除失败');
} });
} 2、控制器
public function destroy(Request $request){
// 获取删除ID $id=$request->input('id'); // 查巡图片
$data=\DB::select("select * from pic where id=$id"); // 删除操作
// 删除成功 返回值1
// 删除失败 返回值0 if (\DB::delete("delete from pic where id=$id")) {
# code... // 删除成功 删除图片
unlink("./Uploads/Goods/{$data[0]->img}");
return "1";
}else{
return "0";
} }

7、laravel中表单中{{ csrf_token() }}保护意义何在(所有的表单请求都要带上,无论是否是ajax)?

不受到 跨站请求伪造 (CSRF) 攻击

Laravel 提供简单的方法保护你的应用不受到 跨站请求伪造 (CSRF) 攻击。跨站请求伪造是一种恶意的攻击,它利用已通过身份验证的用户身份来运行未经授权的命令。

二、内容在总结中

 

laravel基础课程---10、数据库基本操作(如何使用数据库)的更多相关文章

  1. laravel基础课程---16、数据迁移(数据库迁移是什么)

    laravel基础课程---16.数据迁移(数据库迁移是什么) 一.总结 一句话总结: 是什么:数据库迁移就像是[数据库的版本控制],可以让你的团队轻松修改并共享应用程序的数据库结构. 使用场景:解决 ...

  2. laravel基础课程---13、数据库基本操作2(lavarel数据库操作和tp对比)

    laravel基础课程---13.数据库基本操作2(lavarel数据库操作和tp对比) 一.总结 一句话总结: 非常非常接近:也是分为两大类,原生SQL 和 数据库链式操作 学习方法:使用时 多看手 ...

  3. laravel基础课程---15、分页及验证码(lavarel分页效果如何实现)

    laravel基础课程---15.分页及验证码(lavarel分页效果如何实现) 一.总结 一句话总结: 数据库的paginate方法:$data=\DB::table("user" ...

  4. laravel基础课程---11、lavarel的ajax操作(ajax优劣势是什么)

    laravel基础课程---11.lavarel的ajax操作(ajax优劣势是什么) 一.总结 一句话总结: 优势:用户友好度:异步通信,不会频繁刷新页面,用户友好度比较高 优势:减轻数据库压力 缺 ...

  5. laravel基础课程---9、视图(lavarel的模板语法和tp相比怎样)

    laravel基础课程---9.视图(lavarel的模板语法和tp相比怎样) 一.总结 一句话总结: lavarel的模板语法比thinkphp好用很多:和html代码配合的更好 lavarel比t ...

  6. laravel基础课程---2、Laravel配置文件、路由及php artisan(php artisan是什么)

    laravel基础课程---2.Laravel配置文件.路由及php artisan(php artisan是什么) 一.总结 一句话总结: PHP工具匠:php artisan,其实本身就是一些PH ...

  7. laravel基础课程---12、lavarel的ajax操作2(lavarel的ajax使用总结)

    laravel基础课程---12.lavarel的ajax操作2(lavarel的ajax使用总结) 一.总结 一句话总结: 比较简单:就是js请求ajax,然后控制器获取请求参数,返回数据即可 1. ...

  8. laravel基础课程---8、laravel响应和视图(响应是什么)

    laravel基础课程---8.laravel响应和视图(响应是什么) 一.总结 一句话总结: 就是向请求返回的响应数据(一般为html(视图),当然也可以是变量值):所有的路由及控制器必须返回某个类 ...

  9. laravel基础课程---7、文件处理、闪存、cookie(cookie原理和使用场景)

    laravel基础课程---7.文件处理.闪存.cookie(cookie原理和使用场景) 一.总结 一句话总结: 页面请求服务器的时候是把这个页面中所有的cookie都带上了的,cookie里面也存 ...

随机推荐

  1. 【小程序】微信小程序开发实践

    帐号相关流程 注册范围 企业 政府 媒体 其他组织 换句话讲就是不让个人开发者注册. :) 填写企业信息 不能使用和之前的公众号账户相同的邮箱,也就是说小程序是和微信公众号一个层级的. 填写公司机构信 ...

  2. 身份证实名认证接口调用实例(PHP)

    基于php的身份证实名认证接口调用代码实例,身份证实名认证接口申请:https://www.juhe.cn/docs/api/id/103 <!--?php // +-------------- ...

  3. distinct 与order by 一起用

    distinct 后面不要直接跟Order by , 如果要用在子查询用用order by .

  4. 有问必答项目 -数据库设计文档(ask-utf-8)

    有问必答项目 -数据库设计文档(ask-utf-8) 表前缀的使用 早期租用公共的服务器 一个数据库,保存多个项目(问答.电子商务.医院),为了区分这些项目,使用前缀分割 ask_ ec_ hospi ...

  5. javascript的window.open()具体解释

    通过button打开一个新窗体.并在新窗体的状态栏中显示当前年份. 1)在主窗体中应用下面代码加入一个用于打开一个新窗体的button: <body> <script type=&q ...

  6. [ACM] HDU 5024 Wang Xifeng&#39;s Little Plot (构造,枚举)

    Wang Xifeng's Little Plot Problem Description <Dream of the Red Chamber>(also <The Story of ...

  7. 一个JavaScript Function Outliner插件 第三个版本 让你的JavaScript代码也支持折叠

    下面我只以英文的vs2008版本作为实例,演示一下打开vs2008 然后一次点击:Tools->Options (工具->选项)会弹出选项设置框在左边的树目录里展开Environment- ...

  8. Android---61---TabHost简单使用

    与TabHost结合使用的组件: TabWidget:代表选项卡的标签条 TabSpec:代表选项卡的一个Tab页面 TabHost不过一个简单的容器,它提供两个方法来创建.加入选项卡 newTabS ...

  9. Linux进程间通信(IPC)编程实践(十二)Posix消息队列--基本API的使用

    posix消息队列与system v消息队列的区别: (1)对posix消息队列的读总是返回最高优先级的最早消息,对system v消息队列的读则能够返回随意指定优先级的消息. (2)当往一个空队列放 ...

  10. 浅谈iOS中MVVM的架构设计与团队协作【转载】

    今天写这篇文章是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正.本篇文章的内容沿袭以往博客的风格,也是以干货为主,偶尔扯扯咸蛋(哈哈~不好好工作又开始发表博客啦 ...