PHP网页编程之PHP实例:用PHP编写的网上查询拜访投票体系...
学习如何将PHP与HTML结合起来完成简单动态页面 这是一个复杂的投票法式,关于刚学PHP和伴侣来讲是一个很不错的入门法式。在这里给人人引见一下,但愿能对伴侣们有所匡助。该体系是由以下四个文件构成的:有HTML查询拜访表单的survey.htm,完成查询拜访功效的survey.php,纪录查询拜访项目标data.txt和纪录查询拜访了局的survey.txt.个中data.txt和survey.txt咱们可以用NOTEPAD分离创立之,并传到法式目次下。文件data.txt中存的是要停止查询拜访的项目,注重每一个项目应占一行;而survey.txt则可所以一个甚么内容也没有的空文件。
Survey.htm的代码可以如以下所示:
<html>
<head>
<title>survey</title>
</head>
<body>
<form method="POST" action="survey.php">
<p><input type="radio" value="0" name="vote">查询拜访项目一</p>
<p><input type="radio" name="vote" value="1">查询拜访项目二</p>
<p><input type="radio" name="vote" value="2">查询拜访项目三</p>
<p><input type="radio" name="vote" value="3">查询拜访项目四</p>
<p><input type="radio" name="vote" value="4">查询拜访项目五</p>
<p><input type="hidden" name="go"value="1">
<p><input type="submit" value="提交" name="B1"></p>
<a href="survey.php?result=1">检查了局</a>
</form>
</body>
</html>
注重文件data.txt中的查询拜访项目与下面的查询拜访项目在个数和分列按次必需坚持分歧,不然会失足或查询拜访的了局禁绝确。同时为了将查询拜访了局显示成条形图模式,应当筹办若干种分歧色彩的条形图片。如:0.gif,1.gif,2.gif,3.gif,4.gif等.
以下是完成查询拜访功效的survey.php代码:
<?
$data="data.txt";
$votes="survey.txt";
$dataf=file($data); /*读出查询拜访项目文件中的项目*/
$file_votes=fopen($votes, "r");
$line_votes=fgets($file_votes, 255);/*读出已纪录的查询拜访了局*/
fclose($file_votes);
$single_vote=explode("|", $line_votes); /* 并将数据按指定的字串切开,再将字串传回到数组变量中*/
if ($result!=1) /*假如已承受了查询拜访*/
{
$file_votes=file($votes, "r");
if ($REMOTE_ADDR == $file_votes) /*反省是否是统一团体*/
{
echo "<center><font color=red>您已投过票了,感谢您的介入!</font></center>";
exit;
}
/*假如IP不反复,则履行以下法式*/
$ficdest=fopen($votes, "w");
for ($i=0; $i<=count($dataf)-1; $i++)
{
if ($i == $vote)
{ /*判别选择了哪一个项目*/
$single_vote[$i]+=1;
}
fputs($ficdest, "$single_vote[$i]|"); /*将数据写回文件*/
}
fputs($ficdest, "\n$REMOTE_ADDR");/* //写入投票者IP*/
fclose($ficdest);
$result=1; /*投票胜利*/
}
/*写入投票了局后并显示投票了局*/
if ($result==1)
{
echo "<table cellpadding=10>";
for ($i=0; $i<=count($dataf)-1; $i++)
{
/*获得投票总数*/
$tot_votes+=$single_vote[$i];
}
for ($i=0; $i<=count($dataf)-1; $i++)
{
$imag=strval($i).".gif";/*判别用哪一种条形图片来显示统计了局*/
$stat[$i]=$single_vote[$i]/$tot_votes*100;/*盘算百分比*/
$scla=$stat[$i]*5;/*条形图和缩小倍数,这里是安百分数的5倍的相素的宽度来显示的*/
echo "<tr><td><li><font face=Verdana size=2>";
echo "$dataf[$i]</font></td><td align=left><font face=Verdana size=2>";
echo "<img src=\"$imag\" height=20 width=$scla align=middle> ";/*输入条形码图*/
printf("%.1f", "$stat[$i]");
echo "%</font></td><td align=center><font face=Verdana size=2>";
/*输入本栏目投票数*/
echo "$single_vote[$i]</font>";
echo "</td></tr>";
}
echo "</table><p>";
echo "<font face=Verdana size=2>总投票数:$tot_votes </font>";
}
?>
申明:
在这里为了避免一人多投是采取纪录比来的一名投票者的IP的办法来完成的,而比来的一名投票的IP地址是WEB客户机在对办事器收回恳求时存储在情况变量REMOTE_ADDR中的。
我也是一个初学者,关于这篇文章能够有很多毛病和不妥的地方接待列位提出名贵的定见和建议。感谢!
模仿的不光是模仿,模仿的同时在加改进,就成了自己的作品了。 我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。 为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。 开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。 装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。 有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。 学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。 其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。 当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标, php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。 至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。 基础有没有对学习php没有太大区别,关键是兴趣。 如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域, 环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。 学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql 我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能: 本文当是我的笔记啦,遇到的问题随时填充 当然这种网站的会员费就几十块钱。 小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
页:
[1]