表单传值

1,复选框传值的方法
php学习第三天
在php页面接收时候,hobby变成了一个数组,通过遍历数组就可以得到复选框传回来的值
php学习第三天

php页面的编码问题可以使用下图方式来解决
php学习第三天

header('Content-type:text/html;charset=utf-8');

2,上面的复选框,传到PHP页面的是一个数组,这个数组是一个字段的数据,但是php不能存储数组对象的,所以就需要把数组转为字符串进行存储
php学习第三天
如上图,implode(数组 , '|');使用这个函数,可以把数组,转为以特殊符号分割的字符串,然后存入到数据库中

3,我们把数组变成字符串存入数据库以后,之后如果使用这个数据,怎么再取回来呢?就需要把字符串重新转为数组,可以使用explode('分隔符',‘要转为数组的字串’) 这个函数来转为数组

php学习第三天
如上图,数组取出来以后,如何判断页面上的复选框是被选中的呢? 这里使用in_array('某个数据',我们上图中取出来的数组变量)

注意:复选框单选框的细节问题,如果复选框或者单选框没有默认值选中,php端就无法获得这些变量,当我们用php调用这些变量时候,就会报错,为了谨慎,我们需要先判断,复选框或者单选的变量是否有值,
php学习第三天
如上图所示,如果不进行判断,直接使用$_POST[‘hobby’] 如果没有值,会报错的

文件上传

1,表单如何填写
php学习第三天

<div style="margin-top:50px; text-align:center">
			<form action="" method="post"  enctype="multipart/form-data">
				<input name="image" type="file"/>
			
			</form>			
</div>

2,在后台获得文件以后,文件对象其实也是一个数组,里面有下面几个元素,来确定文件的身份
php学习第三天
php端获得数据以后,如何进行文件保存呢?
1,获得文件
2,判断文件是否是上传文件,通过is_uploaded_file ( 参数是临时文件的路径字符串 ) 返回布尔值来判断文件是否是上传文件
3,确定是上传文件以后,我们就需要把文件从服务器保存的临时位置,移动到我们要保存的位置

move_uploaded_file(文件临时保存路径 , 文件相对路径)     

php学习第三天
多文件上传
用两种方法 同名表单 和 不同名表单
① 同名表单上传多个文件后,后台获得的数据形式
php学习第三天
php学习第三天

②不同名的多个文件上传后,php端数据的格式
php学习第三天
不同名多文件上传存储的方式
php学习第三天

php对数据库的操作
1,连接打开数据库
php学习第三天

$conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password) or die("error connecting") ; //连接数据库
 
mysql_query("set names 'utf8'"); //数据库输出编码  这里的utf8不带中间划线
 
mysql_select_db($mysql_database); //打开数据库

上面是单独的一个连接文件,当哪里需要连接数据库时候,直接调用就可以了
php学习第三天
下面是对php执行sql语句的基本方法
php学习第三天

$sql ="select * from news "; //SQL语句
 
$result = mysql_query($sql,$conn); //查询

$conn 是连接的数据库资源,这个第二个参数是告诉我们,sql语句到哪一个数据库里面去执行

下面是对数据库数据更新的操作
php学习第三天
下面是对数据库删除的操作
php学习第三天

php的查询数据库操作
php学习第三天
上图所示,只要sql语法不错,查询出来的结果即使是空的,也不会报错,除非sql语法出现错误,才会报错,所以不能根据结果集不报错,来判断是否取得了数据

php学习第三天
如上图所示,可以通过 mysql_num_rows() 来判断,总共查到了多少数据

对结果集的操作的几个常用函数
php学习第三天
mysql_fetch_assoc() 一次只访问一行数据,返回这个数据的数组,其中,表中的字段作为下标,表中的一行数据作为数组的元素,如上图所示

php学习第三天
mysql_fetch_row()返回的也是一个数组,这个数组就是一行数据,其中数字为下标,数据内容为元素

php学习第三天
mysql_fetch_array()方法是综合了上面的两种方法,需要改变参数,就可以改变返回的数据数组的形式

php学习第三天
mysql_num_fields() 返回结果集中,字段的个数;如上图所示
php学习第三天
mysql_field_name() 通过提供下标,来获得结果集中,对应的字段的名字

php学习第三天
mysql_errno() mysql_error() 这两个函数是针对结果集的操作,告诉你结果集是取得空还是语法错误 (exit() 是程序终止不再执行)

php学习第三天
⑦ mysql_insert_id() 获取上面插入数据所产生的自增长的ID,如果没有自增长的ID,返回的是0

HTTP协议

header() 函数 前面不能写任何输出,比如echo

1, header("Location: http://www.example.com/"); 这是直接跳转,下面的代码不再执行
php学习第三天
2, header('Refresh: 10; url=http://www.ithhc.cn/'); 延迟跳转
php学习第三天
3, header('Content-Disposition: attachment; filename=ithhc.xlsx'); 声明这个页面是下载页面

php学习第三天
4,设置php页面编码 header('Content-Type: text/html; charset=utf-8');

对文件目录和文件的操作
①创建路径 mkdir()
php学习第三天
如上图所示,创建成功,会返回布尔值 true ,但是文件夹存在了,这个函数还是会报错,这就需要抑制这种错误,在函数前面加上@符号
php学习第三天
②删除目录文件夹 rmdir(文件夹目录)

③文件夹下内容读取 opendir()readdir()
php学习第三天
如上图,最后关闭资源 通过 closedir($r); 来关闭资源

dirname() 获得路径的上一个路径
php学习第三天
realpath() 获得文件的绝对路径,如果文件不存在会返回false

php学习第三天
is_dir() 判断是否是路径,如果是文件就会返回错误
php学习第三天
scandir() 获取路径文件夹下面的所有文件,返回这些文件组成的数组
php学习第三天
文件下载的实现
php学习第三天
如果文件太大,需要分批读取的时候,就不能使用 file_get_contents() 函数了 ; 而是使用以下函数来读取
php学习第三天
cookie 和 session 技术(会话技术)

1,cookie
php学习第三天
cookie的设置和获得
php学习第三天
php学习第三天
cookie的生命周期,一般默认是 浏览器关闭以后,cookie就自动清空了,如果要设置cookie在浏览器存储时间可以通过以下方法
php学习第三天
服务器不能随便清空cookie,但是可以设置cookie的值,如果想清空cookie,可以设置cookie的值为空
php学习第三天
cookie的访问特点,一般父文件夹下的文件设置的cookie 可以在子文件夹下面的文件内可以访问,但是,子文件夹内的文件设置的cookie值不能在父文件夹内的文件来访问,一般开发网站,我们设置的cookie希望能全网站访问,这么就需要使用设置setcookie()的第四个参数了,通过设置 ‘/’ 这个符号,告诉这个cookie是全站所有文件都可以访问的
php学习第三天
session的使用,这是数据存放在服务器端的,比较安全,里面可以存放任何数据,和cookie不同,cookie里面只能存放数字或者字符串
使用session 必须先通过 函数开启 才可以使用session
php学习第三天
php学习第三天
下图才是真正的销毁session
php学习第三天
GD图像处理API

GD的使用流程
php学习第三天
1,创建画布资源
php学习第三天
php学习第三天

相关文章: