【主流web服务器端架构】
操作系统 + 服务端 + 编程语言 + 数据库
Windows + IIS + ASP.net + SQL Server
Linux + Apache + PHP + MySQL
【LAMP】
LAMP = Linux + Apache + MySQL + PHP/Perl/Python
【PHP】
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。(via百度)
【PHP四种标记】
<?php ?>
<script language=’php’></script>
<??>[需要开启short_open_tag]
<%%>[需要开启asp_tags] (ASP风格)
一般用第一种或第三种
【PHP语句结束符】
语句结束符以分号结束
在PHP的结束标记内,内置一个语句结束符
如果PHP代码段是整个文档内最后的一个代码段,可以省略结束标记
建议,如果整篇文档都为PHP代码,建议不写结束标记
【HTTP请求方法】
1、GET-从指定的资源请求数据
查询字符串(名称/值对)是在GET请求的URL中发送的
/test.php?name1=value1&name2=value2
GET请求:可被缓存;保留在浏览器历史记录中;可被收藏为书签;不应再处理敏感数据时使用;有长度限制;只应当用于取回数据
2、POST-向指定的资源提交要被处理的数据
查询字符串是在POST请求的HTTP消息主体中发送的
/test.php?name1=value1&name2=value2
POST请求:不会被缓存;不会保留在浏览器历史记录中;不能被收藏为书签;对数据长度没有要求
【PHP提交数据查询】
PHP要获取用户输入,可以通过两个超全局变量来获取:
$_GET
$_POST
【PHP表单处理】
【PHP文件上传】
在服务器端,可以通过超级全局变量数组$_FILES获取上传文件信息
【PHP操作数据库】
1、mysql扩展的使用(http://www.w3school.com.cn/php/php_ref_mysql.asp):
mysql_connect()打开非持久的 MySQL 连接。
mysql_select_db()选择 MySQL 数据库。
mysql_set_charset()Sets the client character set
mysql_query()发送一条 MySQL 查询。
mysql_close()关闭非持久的 MySQL 连接。
处理返回数据:
mysql_fetch_row从结果集中取得一行作为数字数组。
mysql_fetch_assoc(效率较高)从结果集中取得一行作为关联数组。
mysql_fetch_array(效率较低,不建议)从结果集中取得一行作为关联数组,或数字数组,或二者兼有。
2、mysqli扩展的使用(https://www.w3cschool.cn/php/php-ref-mysqli.html):
mysqli_connect():打开非持久的 MySQL 连接。
mysqli_select_db():设置活动的 MySQL 数据库。
mysqli_set_charset()设置默认客户端字符集。
mysqli_query()执行某个针对数据库的查询。
mysqli_close()关闭先前打开的数据库连接。
处理select查询结果的函数:
mysqli_fetch_row从结果集中取得一行,并作为枚举数组返回。
mysqli_fetch_assoc(效率较高)从结果集中取得一行作为关联数组。
mysqli_fetch_array(效率较低,不建议)从结果集中取得一行作为关联数组,或数字数组,或二者兼有。
sqli的参数化查询用来避免sql注入(没懂)
可参考:http://www.cnblogs.com/LoveJenny/archive/2013/01/15/2860553.html