《PHP与MySQL综合应用.ppt》由会员分享,可在线阅读,更多相关《PHP与MySQL综合应用.ppt(10页珍藏版)》请在三一办公上搜索。
1、第十单元 PHP与MySQL综合应用,目标内容:第29章 PHP与MySQL第30章 表的结合第31章 日期时间数据实例应用:数据库留言簿,第29章 PHP与MySQL,29.1 PHP与MySQL连接的流程1)用户浏览器向网页服务器下达命令 2)服务器收到请求并寻找指定网页 3)服务器执行网页内容含的PHP代码 4)PHP代码通过内置Mysql API访问后台数据库服务器 5)取加后台数据库查询结果并返回给用户 PHP与数据库MySQL连接方法:1.连接函数mysql_connect()2.建立数据库mysql_create_db()3.查询1)mysql_db_query()2)mysql
2、_query()eg:$select=mysql_select_db(test);$sql=select*from customers;$result=mysql_query($sql)|die(query fail);4.错误处理if($result=mysql_query(sql)echo 显示正确信息;else echo Error:.mysql_errno().;错误信息:.mysql_error();,29.2 PHP与Mysql连接函数,一、连接类函数 1.mysql_close()关闭数据库 int mysql_close(int link_identifier)2.mysql_
3、connect 连接数据库 int mysql_connect(string hostname:port:/pathto/socket,string username,string password)eg:3.mysql_pconnect()持续连接、4.mysql_select_db 选择数据库 int mysql_select_db(string database_name,int link_identifier)成功返回True,失败返回false eg:$link=mysql_connect();mysql_select_db(test,$link);5.mysql_change_us
4、er 更改连接用户,29.2 PHP与Mysql连接函数II,二、建立或删除数据库类函数1.mysql_create_db 增加一个数据库 成功返回True,失败返回false 2.mysql_drop_db 删除数据库三、查询类 1.mysql_query 送出Mysql查询 eg:2.mysql_db_query与上区别见P308,29.2 PHP与Mysql连接函数III,四、处理查询结果 1.mysql_fetch_array 取得查询结果,存入数组中 array mysql_fetch_array(int result,int result_type)result_type:1)my
5、sql_num 2)mysql_assoc 3)mysql_both eg:$row=mysql_fetch_array($result);echo$rowname;2.mysql_data_seek 移动内部指针 3.mysql_field_seek 设置指针的偏移量 4.mysql_affected_rows 取得先前操作Mysql时,受影响的行的数目 返回上一个操作真正影响的数据行数(row)5.mysql_free_result 释放查询后的内存 6.mysql_num_fields 取得字段的数目 7.mysql_num_rows 取得结果中行的数目 8.mysql_field_fl
6、ags 取得指定定做的标志 9.mysql_fetch_field 取得字段信息 eg:p315,29.2 PHP与Mysql连接函数IV,10.mysql_fetch_object 取得查询后的对象结果返回一个对象,相当于取得行 while($row=mysql_fetch_object($result)echo$row-user_id;echo$row-fullname;11.mysql_fetch_row 取得单行结果12.mysql_field_name 取得字段的名称13.mysql_inser_id 取得之前insert操作的id14.mysql_fetch_lengths 取得各
7、字段的最大长度 15.mysql_list_fields 列出字段16.mysql_field_type 取得指定字段的数据类型 五、错误处理类1.mysql_errno 2.mysql_error六、数据库信息类1.mysql_tablename 取得表名称 2.mysql_list_tables 列出数据库中的表3.mysql_list_dbs 列出Mysql服务器上可用的数据库4.mysql_field_table 取得指定字段所在的表名称5.mysql_field_len 取得指定字段的长度第30章程表的结合,第30章 Join 与where,30.1 Join 与where eg:s
8、elect first_name,order_id from customers as c,orders as O where c.id=O.id;select first_name,order_id from customers as c inner join orders as O on c.id=O.id;30.2 各类JOIN 1.笛卡尔结合 旧式where语法:select*from customers as c,orders as O;新式Join 语法:select*from customers as c cross join order as O;2.Left join sel
9、ect*from customers as c LEFT JOIN orders as O ON C.id=O.id;3.Right Join select*from customers as c RIGHT JOIN orders as O ON C.id=O.id;4.Natural left join 上述第二种left join也可改为:select*from customers as c Natural LEFT JOIN orders as O;,第31章 日期时间数据I,31.1日期相关数据1.datetime字段2.date字段3.time字段4.year字段5.timesta
10、mp字段31.2数据类型之间的转换31.3 Mysql内置日期函数1.dayofweek(date)返回日期的星期索引2.weekday(date)同上3.yofmonth(date)返回date中日期部分4.dayofyear(date)返回一年中的日数5.Month(date)返回日期中的月份6.dayName(date)返回星期7.monthname(date)返回月份8.quarter(date)返回季9.week(date)或week(date,First)10.Year(date)返回年份,第31章 日期时间数据II,11.hour(time)12.minute(time)13.p
11、eriod_add(P,N)增加N个月到阶段P14.period_diff(p1,p2)返回时期P1P2之间的月数15.date_add(date,intervar expr type)16.To_days(date)返回从公元0年起的天数17.From_days(N)18.date_format(date,format)格式化19.time_format(time,format)20.curdate()或current_date21.curtime()current_time22.Now()23.Unix_timestamp()24.from_unixtime25.from_unixtime(unix_timestamp,format)26.sec_to_time(seconds)27.time_to_sec(time),实践与操作:,熟悉PHP与mysql的连接函数并:1创建一个数据库留言簿2.建立一个PHP日历,