一直想写点我在编程学习中遇到的问题以及我是如何解决的,我是一个PHPer,而且对计算机有着深厚的兴趣。今天闲着没事,就顺手整理一点,随后会相继会做更多总结,敬请您的关注……
如果你是老鸟,我想你看到这个应该可以勾起你当时从我这样的菜鸟一步一步走过来的回忆吧!
由于语言表述能力有限,各位看官如果不理解或者您有更好的建议和学习心得可以E-mail我(731883571@qq.com)。废话到此###下面切入正题
1、服务器运行原理
当时我怎么也不这客户端和服务器到底是个怎么个关系~
我贴个图这样说着比较放便(自己用diagram designer画的,多多体谅)
客户端需要一个带有浏览器(browser)的操作系统,当你在地址栏输入http://www.0377joyous.com/list.php?cid=23&page=2类似这样的请求的时候,这样web服务器(这里可以查询DNS、域名、web服务器等相关知识)首先是经过apache(或者iis等软件)根据语言找对应的解释包(这个时候就用到了php包),比如list.php页面可能是
<?php
$conn=mysql_connect(“localhost”,”root”,””);
……
$cid=$_GET[‘cid’];
If($_GET[‘page’]){$page=$_GET[‘page’];}
……
?>
这样一些代码
首先apache会把<?php和?>包含的代码识别出来(当然如果你额外配置了php.ini短标签也会识别<?和?>,有很大一部分网友问过我为何代码在他的环境下不能解析就是这个短标签没有开启),这样就需要php.ini的帮助了。php.ini里面说了php的扩展包以及翻译(可以这么理解吧,比如你说people,可以翻译成“人,人们”)php的函数如何执行,这样当解释到mysql_connect()就需要数据库mysql出场了,这样连接到mysql数据库去执行sql语句进行CRUD(创建,读取,更新,删除),最终都会返回给apache一个纯文本文件。简单说:apache的作用就是把<?php和?>这样的标签替换成html标签,然后返回给发出请求的客户端浏览器(浏览器的作用就是把这些html标签的文本正常显示出来,当然它也需要一个过程。比如遇到<h1></h1>会进行一些操作和解析)
说的有点罗嗦,你可能还没有理解,那么就去百度或者google一下吧(网上有这样一句调侃的话:外事问谷歌,内事问百度,房事问天涯)
2、从post和get入手
我们访问web网页,当我们看完了一页,我想看下一页当然需要点击一个超链接发出请求,这样我们就需要交互了。交互就是告诉web服务器客户端需要什么。这个时候就需要发送指令了。自然post和get就是可以理解为发送指令的方法而已。可能你还不理解。这样分你就清楚了:可以在地址栏看到这样的a=23&b=78或者?wd=web%D4%CB%D0%D0%D4%AD%C0%ED这样形式的都是get方法的传送的数据(在接收页面就可以用$_GET获取发送的数据),剩下你表面看不到的都是post的方法,可以在接受页面用$_POST获取。还是那句话,不懂多问,多查资料