仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2260|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网页设计PHP使用技能七则

[复制链接]
愤怒的大鸟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:21:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
怎样学习,大家都知道编程是1门很枯燥的事业,所以大家一定要有兴趣,可能刚开始打算学的时候是因为别人说php有多好,php多么流行,但是后来伴随着学习的深入,你的这些技能   PHP (Hypertext Preprocessor)是一种 HTML 内嵌式的言语,也是今朝对照盛行的网页编程言语。它撑持的后端数据库品种凡多,几近含盖了以后的一切数据库体系。同时它包括了普通言语有的数学运算、工夫处置、文件体系、字符串处置、行程处置等功效,再加上它是收费的体系,使得本钱与效益比,几近等于无穷大。

上面是我在用PHP做网站时,总结出一些小技能,拿出来飨以人人。

1、判别某个函数是不是被撑持
因为在PHP中咱们可以天真的利用增添或削减php撑持的模块,所以有的时分咱们在利用PHP之前,老是会起首肯定某个模块是不是被加载,好比,看看GD图形模块是不是被撑持,可以用上面的这段代码:

if(!function_exists('imagecreate')) {
die('这个主机今朝不撑持GD图形模块');
}
?>

一样的事理,咱们可以使用相似的代码,测试 MSSQL,OCI等模块是不是被撑持。

2、在字符串中把网址改成超等链接
在网页中提交表单时,常常在提交的申明文本中呈现一些网址,好比团体主页等信息,假如在显示时主动将其转为超等链接,那将是一件很舒服的事,就像用WORD编纂文档时主动呈现超等链接一样。上面这段代码就很好的完成了其功效。

$string = "毗连赛迪网http://www.ccidnet.com 站点";
//注重:毗连后需求有个空格或回车。
$string = eregi_replace("http://([^ ,\r\n]*)","<a href=\\0 tarrget=_blank>\\0</a>",$string);
$string = eregi_replace("ftp://([^ ,\r\n]*)","<a href=\\0 target=_blank>\\0</a>",$string);
print $string;
?>

3、用PHP处置多个同名复选框
假如一个表单中有多个同名复选框,在提交到php时却只要一个值,而其实不像asp那样是一串用逗号朋分的值。处理的办法是使用数组。将复选框的name前面加上[],例如:<input type="checkbox" name="pp" value="1"> 改成:<input type="checkbox" name="pp[]" value="1">。如许php将失掉一个叫pp的阵列。在提交的表单中先用Count(pp)来判别数组的个数即选中的个数,然后对数组停止分离处置就好了。

一样的事理也顺应于处置下拉框的多选成绩。

4、使用static完成表格的色彩隔行显示
咱们用PHP从数据库查询数据,并将了局输入到阅读器上,假如了局有良多行,表格的bgcolor(后台色)假如满是单色的,阅读者会感到不太恬逸。那末如何做使表格各行的色彩分歧呢?请看上面代码:

function getcolor()
{
static $colorvalue;//界说一个静态变量
if($colorvalue=="#eeeeee")
$colorvalue="#F5F5F5";
else $colorvalue="#eeeeee";
return($colorvalue);
}
print("<table border=1>\n");//上面输入10行
for($i=0;$i<10;$i++)
{
$bcolor=getcolor();//换后台色彩
print("<tr bgcolor=$bcolor>\n");
print("<td>$i</td>\n");
print("</tr>");
}
print("</table>\n");
?>

申明:
此法式中界说了一个静态变量static $colorvalue意思是在函数挪用停止后,此变量$colorvalue还保存值,没有消逝。当再次挪用getcolor()函数时,变量$colorvalue的值是前次函数挪用停止时$colorvalue的值。

5、在php中防止反复援用的举措
人人晓得,在C言语中,咱们可以用#define来界说一个MACRO名字,经由过程反省是不是该MACRO名字界说过去决意该头文件是不是被援用。在PHP中也有一样的成绩,好比:A援用B,C, B援用C,假如不接纳办法,C将被援用2次。如许能够会招致一些奇异的成绩。处理举措:界说一个全局变量,而且经由过程反省该变量是不是界说过去处理这个成绩.举措很复杂,相似C。 只是这个全局变量我建议都用['user_packages'] ['headfilename']的定名划定规矩。

if (!empty($GLOBALS['FOODTAILS']['GLOBALDEFINE'])) return;
$GLOBALS['FOODTAILS']['GLOBALDEFINE'] = true;
class FOODTAILS {...
};
?>

别的,在主法式中尽可能采取require_once "headfiles.php"; 以免反复援用。

6、若何防止表单的反复提交
咱们在做网站时,经常为一些灌水文章而懊恼。有时,因为收集情况等缘由用户不晓得提交是不是胜利,也会再次提交统一份表单,这就形成了表单的反复提交不起。有一个复杂的办法可以免统一表单的反复提交。 起首,先界说一个session变量用来保留一个表单的提交序列号。这里我界说为“$userLastAction”。然后在表单里到场一个hidden变量,把值设为$userLastAction+1:<input type=Hidden name=lastAction value=<? =$userLastAction+1 ?>> 最初,在处置提交之前判别表单是不是已被提交过。

if($lastAction>$userLastAction){
$userLastAction++; // 序列号加1
// 处置表双数据
}
?>

这个技能的次要道理是不答应用户回退后再次提交,也就是说回退后修正再提交也是不答应的,然而仍是不克不及防止Ctrl-C/Ctrl-V的灌水举措。

7、下载文件的下载次数回填
咱们鄙人载软件时,常常会看到此软件的下载统计次数,而这些统计数给网站办理员剖析软件的受接待水平带来了便利。其完成道理是:在后端数据库中寄存软件的独一标识和下载数,在用户下载软件时,起首更新对应软件的下载次数即下载次数加1,然后再到下载文件上正式入手下手下载。请看上面的完成代码:

a、先建一数据表download (后端用MySql)

download表中含有以下两个字段:

id    下载的文件的独一标识

downnum 下载次数,默许值为0



b、完成

假定已从数据库掏出:描写文件名 五笔字型 ;下载文件名:wbzx.zip ;标识号id值为2

处置后生成的超等链接代码为:

<a href="download.php?filename=wbzx.zip&id=2">五笔字型</a>

上面的代码download.php处置下载次数累计及依据传递的文件名定位下载文件。

//毗连Mysql数据库代码略
$res=mysql_query("update download set downnum=(downnum+1) where id='$id'" ,$db);
header("location:$filename");
?>
  可以说你的马步已经扎的差不多了,接下来就要开始练把势的时候了,如果有条件的话,用笔或者打印一个简易的PHP手册在身上,时不时的摸出来看看,记得,去WC也不能放过(^2^)。
飘灵儿 该用户已被删除
沙发
发表于 2015-2-4 12:27:15 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
蒙在股里 该用户已被删除
板凳
发表于 2015-2-9 22:35:18 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
因胸联盟 该用户已被删除
地板
发表于 2015-2-10 06:02:40 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
兰色精灵 该用户已被删除
5#
发表于 2015-2-28 22:30:58 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
精灵巫婆 该用户已被删除
6#
发表于 2015-3-10 08:54:17 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
7#
发表于 2015-3-17 06:08:06 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
只想知道 该用户已被删除
8#
发表于 2015-3-21 01:16:30 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
柔情似水 该用户已被删除
9#
发表于 2015-3-31 19:51:49 | 只看该作者
建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。
老尸 该用户已被删除
10#
发表于 2015-4-4 18:09:37 | 只看该作者
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
变相怪杰 该用户已被删除
11#
发表于 2015-4-10 12:12:14 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
愤怒的大鸟 该用户已被删除
12#
 楼主| 发表于 2015-4-11 05:26:28 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
乐观 该用户已被删除
13#
发表于 2015-4-21 04:21:32 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
若天明 该用户已被删除
14#
发表于 2015-4-24 12:36:24 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
再现理想 该用户已被删除
15#
发表于 2015-6-7 00:04:58 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
小女巫 该用户已被删除
16#
发表于 2015-7-2 01:16:50 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
不帅 该用户已被删除
17#
发表于 2015-7-11 00:47:59 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
莫相离 该用户已被删除
18#
发表于 2015-7-14 19:43:04 | 只看该作者
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
爱飞 该用户已被删除
19#
发表于 2015-7-15 23:06:01 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
小魔女 该用户已被删除
20#
发表于 2015-7-16 09:50:25 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-29 06:42

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表