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) 攻击。跨站请求伪造是一种恶意的攻击,它利用已通过身份验证的用户身份来运行未经授权的命令。

二、内容在总结中

 

最新文章

  1. PKU 1006
  2. python之路-Day11
  3. ytkah网站建设解决方案 大中小微企业营销利器
  4. 【kd-tree】bzoj2648 SJY摆棋子
  5. Python入门笔记(24):Python面向对象(1)速成
  6. html5 canvas 像素随机百分之十显示
  7. 将access数据转换成oracle数据
  8. CentOS7配置Nodejs环境安装记录
  9. [Oracle] - 性能优化工具(3) - ADDM
  10. 图解HTTP读书笔记--精简版
  11. 详解python之反射机制
  12. python 小白(无编程基础,无计算机基础)的开发之路 辅助知识1 with...as
  13. 关于thymeleaf th:replace th:include th:insert 的区别
  14. AspectJ切入点语法详解
  15. zabbix监控交换机状态
  16. Android为TV端助力(转载)
  17. .Net Core 2.0 preview1实现自定义认证方案
  18. Nginx+Keeplived双机热备(主从模式)
  19. xml 和 json 序列化忽略字段
  20. Shell脚本1-20例

热门文章

  1. mpvue上手
  2. Android 百度地图开发(二)
  3. element的el-tabs控制,以及el-select 多选默认值
  4. Archlinux 下的 VMWare Workstation 维护笔记
  5. 【Excle数据透视表】如何隐藏数据透视表中行字段的”+/-”按钮
  6. 【Python】写入文件
  7. Java储存过程
  8. 转:HDMI介绍与流程
  9. Hadoop--设置单一节点集群
  10. Net中的代码规范工具及使用