2019-10-9:渗透测试,基础学习,php文件上传,mysql基础
header("Content-Type:text/html;charst="utf-8")设置头部信息,解决编码问题
setcookie("loginString",$value,0,"/","localhost",false,true);
参数说明第一个参数指定cookie的标识符key
第二个参数指定cookie的值
第三个参数指定cookie生存期
第四个参数指定,该cookie的作用域,将在Cookie上可用的服务器上的路径。
如果设置为“/”,cookie将在整个域中可用。如果设置为'/fo/',
cookie将只在/fo/Directory和所有子目录(如/Fo/Bar /域)中可用。
默认值是正在设置Cookie的当前目录。
第五个参数,domain,对哪个域设置一个cookie
第六个参数规定是否通过安全的 HTTPS 连接来传输 cookie
第七个参数用于指定,该cookie的属性是否是http-only,意思是无法通过js代码来获取cookie值
php文件上传
有关上面的 HTML 表单的一些注意项列举如下:
<form> 标签的 enctype 属性规定了在提交表单时要使用哪种内容类型。在表单需要二进制数据时,比如文件内容,请使用 "multipart/form-data"。
<input> 标签的 type="file" 属性规定了应该把输入作为文件来处理。举例来说,当在浏览器中预览时,会看到输入框旁边有一个浏览按钮
通过使用 PHP 的全局数组 $_FILES,你可以从客户计算机向远程服务器上传文件。
第一个参数是表单的 input name,第二个下标可以是 "name"、"type"、"size"、"tmp_name" 或 "error"。如下所示:
$_FILES["file"]["name"] - 上传文件的名称
$_FILES["file"]["type"] - 上传文件的类型
$_FILES["file"]["size"] - 上传文件的大小,以字节计
$_FILES["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称
$_FILES["file"]["error"] - 由文件上传导致的错误代码
explode(标识,字符串),按照标识来将字符串分割为数组
explode(".","text.te.png")==array("text","te","png")
@end(explode(".",$_FILES["file"]["name"]));
in_array(字符,数组),判断字符在数组中是否存在,有就返回true
move_uploaded_file(临时文件位置,目的位置)
file_exists(文件名),检查文件或目录是否存在,如果存在则返回true
php文件管理,文件的打开,关闭,读取,写入
fopen(参数1,打开文件的位置,需要文件路径和文件名,参数2,打开文件的方式),函数fopen()打开文件
打开方式:
r ,只读。在文件的开头开始。
r+ ,读/写。在文件的开头开始。
w ,只写。打开并清空文件的内容;如果文件不存在,则创建新文件。
w+ ,读/写。打开并清空文件的内容;如果文件不存在,则创建新文件。
a ,追加。打开并向文件末尾进行写操作,如果文件不存在,则创建新文件。
a+ ,读/追加。通过向文件末尾写内容,来保持文件内容。
x ,只写。创建新文件。如果文件已存在,则返回 FALSE 和一个错误。
fclose(句柄,就是打开的文件),关闭文件
feof(),检测是否到达文件末尾,如果没有到达文件末尾,返回值是false
fread(打开的文件,读取文件的大小,单位是字节),读取指定文本大小的内容
fgets(句柄) 函数用于从文件中逐行读取文件,如果需要将整个文档都读取出来,就使用feof()函数+fgets(),循环读取
fgetc(句柄)函数用于读取单个字符
file()将整个文档中数据读取到数组中,一行对应一个单元
file_get_contents(),将整个文档的数据读取到字符串中
file_put_contents(文件名,数据),写数据,如果文件名不存在,创建该文件,如果存在就覆盖内容
basename(),获取路径下的文件名
dirname(),获取文件路径
copy(源文件,目标文件),拷贝文件
unset(), unlink(),删除文件
命令执行函数,通过php中某些函数,去执行系统命令和系统进行交互
常用命令执行函数,
system(“系统命令”)
exec(“系统命令”,可选数组)
shell_exec(‘系统命令’)
··,上引号,键盘~键的另外一个符号
代码执行函数,使用php的某些函数,去执行字符串类型的php代码,注意php代码要求按照php标准来写
常用代码执行函数,
eval(“php代码;”),执行字符串类型的代码
assert(“代码”),执行字符串类型的代码,代码最后的分号,可要可不要
preg_replace(/正则表达式/,替换的字符,目标字符串),如果要执行代码解析,需要使用/e模式的,替换的字符中的代码就会被执行,要执行的代码需要写成完整的函数
数据库管理
mysqli,轻量级数据库,适用于中小型企业,性能好,开源
mssql,需要安装到windows系统中,不支持跨平台,适用于中大型企业
access,小巧方便,适用于小型企业,小型项目
oracle,收费的,适用大型企业,跨平台,性能高,硬件要求高
常用框架组合
mysql+php
mssql+asp,aspx
oracle+java
access+asp
oracle+jsp
数据库模型
关系型数据库,也叫结构化数据库,mysql,mssql,oracle ,db2等,有库有表
非关系型数据库,也叫非结构化数据库,redis,mongodb,nosql,postgresql,hbase等等,一个键一个值
管理Mysql数据库的方式
DOS命令下管理,需要配置mysql环境变量,mysql -u -p 输入对于的账号密码,-p后可以不直接输入密码
phpmyadmin,基于web网页数据库管理平台
mysql-front,开源的c/s模式的数据库管理平台
navicat,工具,功能强大的数据库管理平台,收费
mysql数据库结构
数据库名-->数据表-->表头(字段名)--->数据内容
表中有几个字段,就会有几列数据
一行数据叫做一个记录
管理Mysql数据库的常用命令,dos下mysql命令需要加;分号
mysql -u -p
show database;查看所有数据库
use mysql; 表示进入mysql数据库
show tables;查看当前数据库中的数据表
select * from table_name;查看表中所有数据
2019-10-9:渗透测试,基础学习,php文件上传,mysql基础的更多相关文章
- MVC&WebForm对照学习:文件上传(以图片为例)
原文 http://www.tuicool.com/articles/myM7fe 主题 HTMLMVC模式Asp.net 博客园::首页:: :: :: ::管理 5 Posts :: 0 ...
- salesforce lightning零基础学习(十七) 实现上传 Excel解析其内容
本篇参考: https://developer.mozilla.org/zh-CN/docs/Web/API/FileReader https://github.com/SheetJS/sheetjs ...
- SpringMVC基础(二)_文件上传、异常处理、拦截器
实现文件上传 实现文件上传,需要借助以下两个第三方 jar 包对上传的二进制文件进行解析: commons-fileupload commons-io form表单的 enctype 取值必须为:mu ...
- nodejs学习之文件上传
最近要做个图片上传的需求,因为服务端春节请假回家还没来,所以就我自己先折腾了一下,大概做出来个效果,后台就用了nodejs,刚开始做的时候想网上找一下资料,发现大部分资料都是用node-formida ...
- springMVC3学习(十一)--文件上传CommonsMultipartFile
使用springMVC提供的CommonsMultipartFile类进行读取文件 需要用到上传文件的两个jar包 commons-logging.jar.commons-io-xxx.jar 1.在 ...
- requests 进阶用法学习(文件上传、cookies设置、代理设置)
一.文件上传 1.模拟网站提交文件 提交此图片,图片名称:timg.jpg import requests files={ 'file':open('timg.jpg','rb') } respons ...
- JavaWeb学习总结——文件上传和下载
在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用 ...
- Struts2学习总结——文件上传与下载
Struts2文件上传与下载 1.1.1新建一个Maven项目(demo02) 在此添加Web构面以及 struts2 构面 1.2.1配置Maven依赖(pom.xml 文件) <?xml v ...
- javaWeb学习总结——文件上传、下载
目录 1.文件上传环境搭建 2.文件上传代码实现 3.关于下载 @ 嘿,熊dei,你不得不知道在Web开发中,文件上传和下载功能是非常常用的功能,关于文件上传,浏览器上传[文件以流的形式传输]--&g ...
- PHP学习之文件上传类
<?php $up = new Upload(); $newPath = $up->uploadFile('fm'); if ($newPath === false) { var_dump ...
随机推荐
- Flask解析(一):Local、LocalStak、LocalProxy
原创作者:flowell,转载请标明出处:https://www.cnblogs.com/flowell/p/local_local_proxy_local_stack.html Local是什么? ...
- foreach数组并直接改变数组内容
<?php $arr = array(1, 2, 3, 4); foreach ($arr as &$value) { $value = $value * 2; } // $arr is ...
- SVN 下载与安装(超简单)!!!
一 SVN 是什么? 在公司做过团队开发都知道,一个项目的代码要保持最新的版本. 举个例子! 例如:一个公司的项目有5人开发(A,B,C,D,E五个人),有一个地方专门存放项目的最新的代码,这个地 ...
- [UWP]使用PointLight并实现动画效果
1. Composition Lighting UWP中的Composition Light是一组可以创建3D光照的API,它明明十分好玩而且强大, 但博客园几乎没有相关文章(用UWP或pointli ...
- 20190723_C的三个小实现
1. 有一个字符串开头或结尾含有n个空格(“ abcdefgdddd ”),欲去掉前后的空格,返回一个新的字符串.a) 要求1:请自己定义一个接口(函数),并实现功能:b) 要求2:编写测试 ...
- Ambari 集群时间同步配置教程
本文原始地址:https://sitoi.cn/posts/27560.html 步骤 在时间同步主节点创建 ntp.conf 文件 在时间同步从节点上创建 ntp.conf 文件 修改所有节点时区 ...
- 在虚拟机上的关于Apache(阿帕奇)(1)开启Apache服务以及介绍基础服务
我们来开始讲述Apache(阿帕奇)服务 小知识: Apache 使得一台服务器上放很多网站,网站同时访问 可以使网站更安全(木马如果是root权限 如果webshell apache 可用 ...
- [git]将代码上传到github
1.右键你的项目,如果你之前安装git成功的话,右键会出现两个新选项,分别为Git Gui Here,Git Bash Here,这里我们选择Git Bash Here,进入如下界面 2.接下来输入如 ...
- 关于 Java 中多线程的面试问题 详解
多线程细节: 1. 面试题: sleep 方法 和 wait 方法异同点是什么? 相同点: 可以让线程 处于 冻结状态. 不同点: 1. sleep 必须指定时间 wait 可以指定时间, 也可以不指 ...
- Pandas 分组聚合
# 导入相关库 import numpy as np import pandas as pd 创建数据 index = pd.Index(data=["Tom", "Bo ...