zoukankan      html  css  js  c++  java
  • 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;查看表中所有数据

  • 相关阅读:
    关于编码问题
    期中架构之前所有的命令-总结
    Bootstrap表格添加搜索栏
    Bootstrap表格分页(二)
    Bootstrap表格分页(一)
    Entity Framework 分页处理
    Protocol Buffers v3.0.0编译安装小记
    golang学习笔记
    Java 对象生命周期
    Java 操作符
  • 原文地址:https://www.cnblogs.com/sym945/p/11644048.html
Copyright © 2011-2022 走看看