存档

文章标签 ‘php’

售后培训页面的建立方法

2010年7月5日 2 条评论

讲课,不可避免的学生向你要ppt和各种资料,用U盘copy?病毒很危险,怎么办呢?这个东西又不能随意分发。最近新学了php,讲课的时候灵光一闪,想到了解决思路。

建立一个页面,学院输入姓名后转到下载页面,然后再用文件记录到访日志,学员姓名用遍历数组的方法确认。这个主意导致我讲课突然中断,和各位学员面面相觑。

最近我总有这样的毛病,正讲课呢,脑子里就突然出现了另外一件事情的解决办法,大概因为这节课讲的东西我太过熟悉了吧。

言归正传,说说这个培训售后服务是如何写好的,这也算是我学习php的一个学习作品吧。您可以先到www.wangyutang.com/sh/体验下先。
首先,建立登陆界面,很简单,就是一个带form的php文档,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<html>
<title>王玉堂培训售后服务网</title>
<body>
<center>
  <h1>王玉堂培训"售后服务网"</h1>
  <p>
  	<h3>输入姓名后,就可以下载教师在课堂上的所有课件及资料</h3>
  	<br>姓名必须和通讯录上的一致方可下载<br>
  <form action="sh.php" method="post">
   <table>
      <tr>
       <td>学员姓名</td>
      <td><input type="text" name="name"></td>
     </tr>
      <tr>
       <td><input type="submit" value="登陆"></td>
       <td><input type="reset" value="重置"></td>
      </tr>
    </table>
   </form>
 
</center>
 
<p>
<center>Copyright &copy Wang Yutang 2007, 2008, 2009, 2010<center>
</body>

登陆后的post的提交页面叫做sh.php,这个页面首先用数组存入学员的姓名,然后使用for循环遍历数组,当提交的学院姓名与数组中的某个学员姓名一致的时候,给出下载地址,并打开日志文件aa.txt讲登陆的学员姓名记录下来。下载地址本来计划使用header跳转的,可最近没时间研究。以后再说。如果数组遍历后,没有一致的学员姓名,则给出提示。这个本来用一个if语句来写,但是我觉得if语句太长了怕以后看不懂,就在一致的时候给一个变量赋值,然后再判断这个变量是否得到了该值,没有得到,则给出出错提示。
看代码,我已经给出了详细的解释。我之所以没用数据库,是因为用到数据库更为麻烦,还不如如此。我之所以用for循环来进行数组遍历,只是我习惯用for循环,不晓得和foreach之间的效率差别,这不是我考虑的问题了,我只是要实现我的目的。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<?php  
$name = $_POST["name"];
define("GREETING","很高兴与您共同度过5天时间,祝您工作顺利,万事如意,有事情可以随时拨打售后电话或者发送email。地址是:");
define("email","king@gmail.com");
define("mobilephone","137XXXXXXXX");
//访问日志,访问文件是1log.txt,2log.txt是输入错误学员姓名的记录。
$filename = '1log.txt';
$filenameall = '2log.txt';
//2010.6.26日班名单,共计19人。
$a = array("张三","李四");
$num = count($a);
if ($name)
{ 
for ($i=0;$i<$num;$i++)
{
    if ($a[$i]==$name)
   {
?>
<center>
	<center><h1>中国XXXX<br>国家XXX<br>XXXX售后服务网</h1><br>2010年6月26日-2010年6月30日</center>
<?php
      echo "<h1>" . "欢迎:" . $name . "</h1" . "<p>";
	    echo "<center>" . constant("GREETING") . "<p>" . constant("email") . "<br>" . constant("mobilephone") . "</center>";
	    echo "下载地址“
	   //用判断是否输入正确学员姓名,
              $good = "1";
	 //写入日志文件,查看都谁下载了课件。   
	if (is_writable($filename)) {
 
    if (!$handle = fopen($filename, 'a')) {
         //echo "无法打开日志文件 ($filename)";
         exit;
    }
 
    // Write $somecontent to our opened file.
    if (fwrite($handle, "$name\n") === FALSE) {
        //echo "无法写入日志 ($filename)";
        exit;
    }
 
    //echo "成功将 ($name) 写入日志文件 ($filename)";
 
    fclose($handle);
   exit;
	} else {
    exit;
    //echo "无法记录到日志文件: $filename ,日志文件不可写!";
	}
?>
</center>
<?php	 }
}
}
 
if ($good <> "1")
{
	echo "您输入了错误的姓名,或者您并非我班学员!";
	echo "<a href=\"index.htm\">重新登录</a>";
	echo "<br>";
// 把输入错误的也记录到日志文件。
	if (is_writable($filenameall)) {
    if (!$handle = fopen($filenameall, 'a')) {
         echo "无法打开日志文件 ($filenameall)";
         exit;
    }
 
    // Write $somecontent to our opened file.
    if (fwrite($handle, "$name\n") === FALSE) {
        echo "无法写入日志 ($filenameall)";
        exit;
    }
    echo "成功将 ($name) 写入日志文件 ($filenameall)";
 
    fclose($handle);
   exit;
	} else { 
    exit;
    echo "无法记录到日志文件: $filename ,日志文件不可写!";   
	}
}
 
include("footer.php");    	
 
?>

简单吧,php真的很简单,至少上手比较容易。以后会改正下载方式,隐藏下载地址。这个程序总计花了我5个多小时的时间。前期调试wamp半天,后来调试cookie半天,本来想让用户反复登录,判断用户是否登录,如登录自动跳转,没太弄明白,而且要把登录页面也改成php的,为了节省时间,就没弄。以后把第二个培训班的名单也登陆上。

在记录趣事一件。前几天看荷兰和巴西的比赛,这是我世界杯开赛以来我看的第一场足球赛,虽然我是个十足的伪球迷,而且最近忙的一直很累,但是还是贪心的想看一场完整的世界杯比赛。这场球看得精彩,开场十分钟,巴西就用一个精准的直塞搞定荷兰一个球,我想,我不太相信荷兰不进球,罗比的脚法我还是蛮信任的,就这样看到半场打平,半场后我就有点迷迷糊糊,后来听见欢呼声又进了一个球,此时我已睡意沉沉,不知觉间进了梦乡,待我凌晨3点醒来,揉揉眼睛,奇迹出现了,场上居然变成了0:0,我当时的感觉那真是千头万绪,看了半天我没整明白这到底是怎么回事,难道不算了?这个世界好神奇,呵呵,当我有这种想法的时候,我看到了屏幕右上角的时间,又看到了对阵双方,我才想起来,都第二场了。呵呵。当时我真是懵(这个词我念了N年的糟了)了,想起我们神奇的国度,以为南非也和谐了。呵呵。现在想起来我都得儿呵呵笑一笑。

分类: IT技术 标签: ,