自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

原创 中间件

2020-01-10 14:58:57 66

原创 2020.11.30本地项目

nginx 相对 apache 的优点:轻量级,同样起web 服务,比apache 占用更少的内存及资源抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能高度模块化的设计,编写模块相对简单社区活跃,各种高性能模块出品迅速啊apache 相对nginx 的优点:rewrite ,比nginx 的rewrite 强大模块超多,基本想到的都可以找到少bug ,nginx 的bug 相对较多超稳定.htaccessRewri

2020-11-30 13:38:44 91

原创 电商PLUS18

电商PLUS18LinuxLinux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。优点1)Linux由众多微内核组成,其源代码完全开源; 2)Linux继承了Unix的特性,具有非常强大的网络功能,其支持所有的因特网协议,包括TCP/IPv4、 TCP/IPv6

2020-10-23 10:03:25 233

原创 电商PLUS17

电商PLUS17支付宝同步异步的区别同步是给客户看的,异步是服务器处理请求。同步是客户充值或者支付成功了,给客户一个提示,告诉客户这个操作的结果是成功还是失败。起到的作用就是提示客户这个操作的结果是成功还是失败。异步是服务器在后端处理支付成功或失败时的业务逻辑。同步通知:用于用户在支付宝页面付款完毕后自动跳转;异步通知:其实是处理业务逻辑,比如说修改客户的支付状态;同步得到通知后跳转到自己的网址,然后根据参数告诉客户支付结果,然后在更新状态。异步其实就是一个双保险,如果同步没有跳转你的网址,可

2020-09-15 11:55:30 164

原创 电商PLUS16

电商PLUS16PHP中获取图像尺寸大小的方法是什么?答:getimagesize()获取图片的尺寸;Imagesx()获取图片的宽度;Imagesy()获取图片的高度。'‘和’='之间有什么区别?  ==当你想检查两个单独的操作数的值是否相等时,应该使用(相等)。===另一方面,当你想要一个超级特定的答案时,应该使用(相同的) - 它不仅检查值,还检查操作数的类型。魔术常量LINK 文件中的当前行号。FILE//文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。DIR /

2020-09-15 11:54:36 99

原创 电商PLUS15

电商PLUS15常见的协议HTTP 超文本传输协议 SMTP 简单邮件发送协议 FTP 文件传输协议 RTMP 实时消息传输协议PHP 如何获取客户端的IP地址,$_SERVER[‘REMOTE_ADDR’] ; 通过全局数组来获得getenv(‘REMOTE_ADDR’) ; 通过环境变量来获得抽象类和接口的概念以及区别?抽象类:它是一种特殊的,不能被实例化的类,只能作为其他类的父类使用。使用abstract关键字声明。接口:它是一种特殊的抽象类,也是一个特殊的类,使用interface声

2020-09-15 11:52:06 122

原创 电商PLUS14天

电商PLUS14天char和varchar的区别?char是固定长度。会自动补齐。查询效率要高于varcharvarchar是可变长度,节省空间。varchar100在存储2个字符的时候会占用3个字节。其中一个字节用来记录varchar存储内容的长度,所以varchar100是不能够存储100个字符的。varchar是可变的,varchar10和varchar100 varchar100是不是更具有优势?在数据存储来说,是没有区别的,但是在数据检索筛选的时候,数据库会根据字段的长度去声明内存空间

2020-09-15 11:51:13 81

原创 电商plus10天

电商plus10天1、详情页面的购买数量+1给+绑定一个点击事件获取文本框的购买数量 转化为整数获取库存的值 转化为整数if(购买数量>=库存的值){文本框的值 为库存}else{购买数量+1把+1后的新值 放回给文本框} 2、详情页面的购买数量-1给-号绑定一个点击事件获取文本框的购买数量 转化为整数if(购买数量<=1){文本框的值 为1}else{购买数量-1把-1后的新值 放回给文本框}3、详情页面的购买数量 失去焦点给文本框绑定一

2020-09-15 11:50:31 72

原创 电商plus9

电商plus91、增加浏览历史记录在商品的详情页(goods/product)判断是否登录 已登录商品id、浏览时间、用户id 存入数据库未登录商品id、浏览时间 存入cookie中2、同步浏览历史记录(1) 什么是同步浏览历史记录把未登录时存入cookie的浏览历史记录,当你登录成功那一刻存入数据库(2) 具体步骤实现 在登录成功之后(login/loginDo)取出cookie中的浏览历史记录判断取出的是否有值循环取出的浏览历史记录 在每一条中增加一个用户id将循环后的二维数

2020-09-15 11:49:51 63

原创 电商plus8天

电商plus8天1、局部变量、全局变量在函数体内部的变量为局部变量在函数体外部的变量为全局变量Js、PHP的局部变量,全局变量不同Js的用法//此变量为全局变量 函数体内部、外部全都可以使用var num=10;function test(){console.log(num);}test();function test(){//此变量为局部变量 只能函数体内部使用,外部不能使用var num=10;console.log(num);}test();php的用法2、PH

2020-09-15 11:48:44 95

原创 电商plus6

电商plus61、什么是xss攻击,如何防御(初级)概念:XSS(Cross Site Scripting),即跨站脚本攻击,是一种常见于web应用程序中的计算机安全漏洞.XSS通过在用户端注入恶意的可运行脚本,若服务器端对用户输入不进行处理,直接将用户输入输出到浏览器,然后浏览器将会执行用户注入的脚本。举例: 有一个input输入框,需要用户输入名字,用户却输入一个恶意脚本, , 或者用户输入一个HTML在标签中嵌入恶意脚本,如src,href,css style等.如: 防御:(好多种情况,

2020-09-15 11:47:44 75

原创 电商plus5

电商plus51、get与post区别(1) get是从服务器上获取数据,post是向服务器传送数据。(2) get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段 一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放 置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。(4) get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。(5) get安全性

2020-09-15 11:46:33 55

原创 上下级的展示(哎)

public fucntion xx(){//通过手机号查询(store_qrocde) 得到所有信息 (要具体门店信息的话联查其他表 通过store_id)$data = []; //查询数据库sql$allStoreData = []; //定义一个空数组,用来存储当前代理商所有负责的门店信息//遍历data 递归查询该foreach($data as $key => $val){ //该代理商可能负责多条数据 if($val['level'] == 0){ //如果是负

2020-09-15 11:42:36 96

原创 汽车的车系展示

lcfirst() - 把字符串中的首字符转换为小写strtolower() - 把字符串转换为小写ucfirst() - 把字符串中的首字符转换为大写ucwords() - 把字符串中每个单词的首字符转换为大写

2020-09-02 13:30:22 133

原创 2020-09-01

2020-09-01 16:57:12 88

原创 电商plus5

1、get与post区别(1) get是从服务器上获取数据,post是向服务器传送数据。(2) get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段 一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放 置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。(4) get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。(5) get安全性非常低,post

2020-08-13 11:27:42 87

原创 电商plus3

1、Js中的定时器定时器分为两种 (执行一次、重复执行)(1) 执行一次setTimeout(“要执行代码” or 函数名,时间) 开启定时器clearTimeout(“要执行代码” or 函数名,时间) 清除定时器(2) 重复执行setInterval(“要执行代码” or 函数名,时间) 开启定时器clearInterval(“要执行代码” or 函数名,时间) 清除定时器两者的区别在于:前者只是作用一次,而后者则不停地作用。2、Js中+的作用第一种 +为加法只有两边都为数值类型,

2020-08-13 11:26:51 91

原创 电商plus2

1、为什么使用会话控制?因为http请求是无状态、无连接。 意味着服务器是无法区分不同的用户的。cookie和session统一称为会话控制,主要是为了解决这个问题。2、session的运行原理当第一次访问网站时,Seesion_start()函数就会创建一个唯一的Session ID,并自动通过HTTP的响应头,将这个Session ID保存到客户端Cookie中。同时,也在服务器端创建一个以Session ID命名的文件,用于保存这个用户的会话信息。当同一个用户再次访问这个网站时,也会自动通过

2020-08-13 11:25:36 103

原创 电商plus1

2020-08-13 11:21:29 79

原创 Linux常用命令

Linux常用命令 cd 切换目录 ls -a 查看目录[ -a 代表查看所有文件 包括隐藏文件] pwd 打印当前所在目录 cat 查看文件内容 cp 原始文件名字 新的文件名字 复制文件 mv 原始名字 新的名字 重新命名 wget 下载 vim 下 " :wq " 保存并退出 " :w " 保存文件 " :q!" 强制退出

2020-08-13 11:17:08 71

原创 电子商务4

一、常见http状态码200 (“OK”) 304 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容 403 禁止,服务器拒绝请求 404 未找到,服务器找不到请求的网页 500 服务器内部错误,服务器遇到错误,无法完成请求。 502 错误网关,服务器作为网关或代理,从上游服务器收到无效响应 二、会话控制–session Session的原理 当第一次访问网站时,Seesion_start()函数就会创建一个唯一的Session ID, 并自动通过HTTP的响应头,将这个Sess

2020-08-13 11:12:28 151

原创 电子商务3

jquery文档操作内部追加在内部前边追加元素语法:对象.prepend(“元素”)在内部后边追加元素语法:对象.append(“元素”)把元素追加到匹配对象的内部前边语法:对象. prependTo(‘元素’)把元素追加到匹配对象的内部后边语法:对象.appendTo(‘元素’)外部追加在外部前边追加元素语法:对象.before(“元素”)在外部后边追加元素语法:对象.after(“元素”)把元素追加到匹配对象的外部前边语法:对象.insertBefore(“

2020-08-13 11:11:24 91

原创 电子商务-jquery

层级选择器选择给定的祖先元素的所有后代元素 $(“祖先元素 指定的后代元素”) 选择给定的父元素的所有子代元素 $(“父元素>子元素”) 选择给定的元素的下一个兄弟节点 $(“元素 +下一个兄弟节点”) 选择给定的元素后的所有兄弟节点 $(“元素 ~ 下边所有兄弟节点”) 层级选择器 重点在于符号:空格(后代)›(子元素)+(下一个兄弟节点)~(下边所有兄弟节点)表单选择器:input 选择所有 input, textarea, select 和 button 元素:text 选择所有

2020-08-13 11:10:34 112

原创 电子商务

复习–什么是composerComposer 是 PHP 的一个依赖管理工具。我们可以在项目中声明所依赖的外部工具库, Composer 会帮你安装这些依赖的库文件,有了它,我们就可以很轻松的使用一个命令将 其他人的优秀代码引用到我们的项目中来复习–tp5.1目录application 应用目录config 配置目录route 路由定义目录public WEB目录(对外访问目录)thinkphp 框架系统目录extend 扩展库目录runtime 应用的运行时目录vendor 第三方类库

2020-08-13 11:08:54 93

原创 laravel 理论

《laravel项目开发》理论题1.请写出redis和memcache的区别(从数据类型,存储方式等进行对比)(10分)Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 memcache 只支持字符串的key-valueRedis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。Memcache 只存在内存 发生意外 消失2.写出laravel中间件的作用(10分)

2020-08-13 11:07:56 780

原创 API的小结===一定要看

4月7日:1、composer干什么的?composer 是 php的 依赖管理工具。依赖: A类 -> B类在没有composer之前: include a.class.php include b.class.php $obj = new A();有了composer之后,composer会自动把需要的类加载进来。 $obj = new A();2、Linux安装Composer:1、下载php-composer,执行下列命令其中一个即可,下载成功之后会在目录

2020-08-09 23:23:28 2260

原创 权限 角色 入库

4.20===:添加权限页面查询所有父级权限 循环到view层添加角色页面查询出所有权限对查询出的所有权限数据进行处理 (参考递归 分级)用处理好的数据渲染view层全选反选效果(根据页面结构 找当前元素所在td 下一个td 下面 所有的input checkbox选择or 取消)入库 先把数据加入角色表 (role_id) 再把权限和角色的关系 (role_id power_id 存到role_power关系表)权限管理 (只做 添加 展示)角色模块

2020-08-09 23:21:36 133

原创 github同步

第一步将代码上传到 github远程仓库第二部在服务器上运行目录上 git clone XXXX.git 克隆仓库代码第三步克隆下的代码 没有vendor文件 在框架中 composer install 下载 vendor第四步cp .env.example 到当前目录 ./.env 生成env文件第五步php artisan key:generate 生成框架 指定密钥...

2020-08-09 23:19:31 61

原创 mysql和git

mysql和git安装:http://47.105.106.201:8181/docs/nginx/nginx-1c1fdh08bkke5安装mysql 扩展./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=mysqlnd文档:实训总结链接:http://note.youdao.com/noteshare?id=405809148131d3f7a60976d4354b6c4d四大特性和隔离级

2020-08-09 23:17:45 288

原创 电商表设计

电商表设计管理员admin_id admin_name admin_pwd role_id1 张三 123 2角色表role_id role_name1 超级管理员2 商品管理员3 运营专员角色-权限关系表 role_id power_id 1 1 1 2 1 3 1 4 1

2020-08-09 23:15:43 277

原创 经典sql语句大全

一、基础1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server— 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice ‘disk’, ‘testBack’, ‘c:\mssql7backup\MyNwind_1.dat’— 开始 备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create

2020-08-09 23:13:58 120

原创 时间戳上加时间

<?php// 当前时间戳 格式:2019-03-13 18:00:00echo date('Y-m-d H:i:s', strtotime('now')); // 当前时间戳+1秒echo date('Y-m-d H:i:s', strtotime('+1second')); // 当前时间戳+1分echo date('Y-m-d H:i:s', strtotime('+1minute')); // 当前时间戳+1小时echo date('Y-m-d H:i:s', strt

2020-08-09 23:12:03 835 1

原创 api总结

1、http和https的区别(1) http是超文本传输协议 信息是明文提交https是具有安全性的ssl加密传输协议(2)是完全不同的连接方式用的端口也不一样 http是80端口 https是443端口(3)http的连接很简单是无状态的 可以用cookie解决http无状态的问题(4)身份认证的网络协议 要比http协议安全(5)在网络模式中 http工作于应用层 https工作于传输层 http无需证书 而https需要看申请证书2、对接口安全方面的处理(1)验签:使用http

2020-08-09 23:10:28 244 1

原创 为什么需要消息队列

2020-08-09 23:08:11 58

原创 有点杂的面试问题

接口安全怎么做的?防刷是怎么做的?用什么来存的?怎么计算的?订单自动过期怎么来实现的?定时任务,每1分钟执行一次。微信支付的产品有哪些?(第三方插件)优惠卷如何设计?考虑了哪些?有没有考虑到并发情况下会出现哪些问题?秒杀?如果用户已经抢到了,但是没有付款?运营模块?网路的架构?并发峰值200-300nginx负载有哪些方式?mysql做的主从?如果出现数据延迟?线上是有专门的运维?如何做的分表?用户表有没有做分表?效率低下?数据修改的时候要修改两张表?对外订单接口如何优化,使用消息队列?

2020-08-09 23:02:31 79

原创 MYSQL数据存储

索引是什么?索引目的索引的目的在于提高查询效率,可以类比字典,如果要查“mysql”这个单词,我们肯定需要定位到m字母,然后从下往下找到y字母,再找到剩下的sql。如果没有索引,那么你可能需要把所有单词看一遍才能找到你想要的,如果我想找到m开头的单词呢?或者L开头的单词呢?是不是觉得如果没有索引,这个事情根本无法完成?索引原理除了词典,生活中随处可见索引的例子,如火车站的车次表、图书的目录等。它们的原理都是一样的,通过不断的缩小想要获得数据的范围来筛选出最终想要的结果,同时把随机的事件变成顺序的事件

2020-07-23 23:32:17 148

原创 MYSQL常见索引

普通索引:这是最基本的索引,它没有任何索引,只是为了加快查询速度。唯一索引它与前面的普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。主键索引它是一种特殊的唯一索引,不允许有空值。一般是在建表的时候同时创建主键索引要求:一张表只允许一个主键主键要求自增组合索引:多个字段建立索引。全文索引fulltextMyISAM引擎支持。外键要求数据必须不能再另外一张表中。索引的不足之处上面都在说使用索引的好处,但过多的使用索引将会造成滥用

2020-07-23 22:09:56 57

原创 与或的关系

与或的关系

2020-07-18 02:00:17 796

原创 经典SQL语句大全

一、基础1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server— 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice ‘disk’, ‘testBack’, ‘c:\mssql7backup\MyNwind_1.dat’— 开始 备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create

2020-07-17 11:25:08 276

原创 PHP 文件上传

2020-07-16 18:59:44 66

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除