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 ...
随机推荐
- C加加学习之路 2——两招让你成为牛X的T型人才
有个小伙伴在微信上问我: 我刚工作半年,有时候对于Java的发展方向有点迷茫,Java的范围是在是太广了,我有时候会不知道从哪开始入手,我想问一下,您有什么好的建议吗? 我理解这位朋友的问题是:工作中 ...
- matlab 7遇到的错误 解决方法
安装路径 参考D:\matlab7 安装最后一步弹出 未找到解决方法.不过没有发现有何影响. 安装完成后出现 1. To configure Real-Time Windows Target you ...
- day2------运算符和编码
运算符和编码 一. 格式化输出 现在有以下需求,让用户输入name, age, job,Gender 然后输出如下所示: ------------ info of Yong Jie --------- ...
- Docker 实战—使用 Dockerfile 构建镜像
Dockerfile 指令详解请访问:https://www.cnblogs.com/cloudfloating/p/11737447.html 使用 Alpine Linux 作为基础镜像 Alpi ...
- UNIX环境高级编程 使用方法
1.解压文件到apue.2e目录2.修改相应平台的文件,我使用的是linux,所以修改Make.defines.linux你修改的只需要这一行WKDIR=/home/your_dir/apue2e_s ...
- 设计模式C++描述----02.模板(Template)模式
一. 问题 在面向对象系统的分析与设计过程中经常会遇到这样一种情况:对于某一个业务逻辑(算法实现)在不同的对象中有不同的细节实现,但是逻辑(算法)的框架(或通用的应用算法)是相同的.Template提 ...
- pymysql 防止sql注入案例
from pymysql import connect def main(): """sql演示""" # 1.输入一个语句,根据id展示相 ...
- 【Windows删除指定后缀文件cmd命令】
如果我想删除指定目录下的"*.mp4"后缀文件 在命令行中,进入指定目录,输入 del [/q] "*.mp4" del 命令是删除文件cmd(命令行)命令. ...
- Java线程池ThreadPoolExecutor初略探索
在操作系统中,线程是一个非常重要的资源,频繁创建和销毁大量线程会大大降低系统性能.Java线程池原理类似于数据库连接池,目的就是帮助我们实现线程复用,减少频繁创建和销毁线程 ThreadPoolExe ...
- Python项目生成所有依赖包的清单
最近写完的自动化脚本,分享给同事的时候发现依赖包很难解决(使用的不是virtualenv环境).想起来之前看开源接口平台项目的时候可以一键下载依赖包,于是就找到了第三方包pipreqs,可以自动帮助我 ...