背景:在给某个客户做一个调查问卷项目时(一个很小的项目,姑且也叫项目吧)。开始根据需求和自身的熟悉程度,决定采用asp.net来做。无非也就是实现一个记事本的IO操作。后面因为客户服务器环境的问题,结果改用PHP做。对于PHP只有耳闻,而且听的看的次数也相当的多,因为一直都比较火,但是都久久没有碰它。现在需求来了,没法,就只有硬着头皮去看看。而且时间紧迫,改的的程序第二天就要用。
先把用C#写的代码贴出来
protected void commitInfo_Click(object sender, EventArgs e)
{
Monitor.Enter(lockObject);
try
{
string name = this.name.Value.Trim();
string idcard = this.idcard.Value.Trim();
string phone = this.phone.Value.Trim();
string company = this.company.Value.Trim();
string code = this.code.Value.Trim();
string address = this.address.Value.Trim();
string msg = "";
string filePath = Server.MapPath(".") + "\\data\\result.txt";
string text = File.ReadAllText(filePath);
if (!string.IsNullOrEmpty(text))
{
if (Regex.IsMatch(text, idcard))
{
this.scriptDiv.InnerHtml = "<script>alert('当前身份证号的用户已经提交过了');</script>";
return;
}
}
if (string.IsNullOrEmpty(name))
{
msg += "姓名不能为空,请填写!\n";
}
if (string.IsNullOrEmpty(idcard))
{
msg += "身份证不能为空,请填写!\n";
}
if (string.IsNullOrEmpty(phone))
{
msg += "联系电话不能为空,请填写!\n";
}
if (string.IsNullOrEmpty(address))
{
msg += "联系地址不能为空,请填写!\n";
}
if (!string.IsNullOrEmpty(msg))
{
this.scriptDiv.InnerHtml = "<script>alert('" + msg + "');</script>";
return;
}
using (StreamWriter sw = File.AppendText(filePath))
{
sw.WriteLine("姓名: " + name);
sw.WriteLine("身份证号: " + idcard);
sw.WriteLine("联系电话: " + phone);
sw.WriteLine("单位: " + company);
sw.WriteLine("通讯地址: " + address);
sw.WriteLine("邮政编码: " + code);
sw.WriteLine("提交时间: " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
sw.WriteLine();
//sw.Flush();
//sw.Close();
}
this.scriptDiv.InnerHtml = "<script>setCookie('IDCARD','" + idcard + "',100);alert('恭喜你,提交成功');</script>";
}
catch (Exception ex)
{
this.scriptDiv.InnerHtml = "<script>alert('" + ex.Message + "');</script>";
}
finally
{
Monitor.Exit(lockObject);
}
}
其实也就是把提交的用户信息保存在记事本中,简单的功能。其中涉及到了并发的控制和资源的释放就是了。然后需要将类似的功能用PHP实现。
本来功能很简单,只是对于php连环境都不知道怎么搭建,所以还是比较盲目
先是在网上找一些搭建PHP环境的资料,找了一些,也不知道哪个环境好,结果采用了一种最简单的PHP环境搭建,就是PHPNOW,所谓的一键搭建PHP的环境。呵呵,不过这玩意是比较简单,就跟着说明一步一步的选择就好了,结果PHP+MySQL+apache的环境就搭建好了
接下来的就是看PHP的语法了,其实语言都有相同的,第一眼看上去,觉得和javascript语言挺相似的,刚开始接触的第一感觉,也不知道是不是这样。结果就写了一下的程序
<?php
try
{
$name = $_POST["name"];
$idcard = $_POST["idcard"];
$phone = $_POST["phone"];
$code = $_POST["code"];
$address = $_POST["address"];
$company = $_POST["company"];
date_default_timezone_set ('PRC');
$datetime = date( "Y-m-d H:i:s");
$FileName = $_SERVER['DOCUMENT_ROOT']."\\data\\result.txt";
$data="";
$fp=null;
try
{
$fp=fopen($FileName,"r");
}
catch(Exception $e){
}
while(!feof($fp))
{
$data.=fread($fp,1024*1024*5);
}
fclose($fp);
if (ereg($idcard,$data)){
echo "<div style='font-size:18pt;color:red;'>改身份证号码已经提交过了!<a href='Index.php'>返回</a></div>";
}else{
$fd = fopen($FileName, "a");
flock($fd, LOCK_EX);
fwrite($fd, "姓名: ".$name."\r\n");
fwrite($fd, "身份证号码: ".$idcard."\r\n");
fwrite($fd, "联系电话: ".$phone."\r\n");
fwrite($fd, "单位名称: ".$company."\r\n");
fwrite($fd, "邮政编码: ".$code."\r\n");
fwrite($fd, "提交时间: ".$datetime."\r\n");
fwrite($fd, "通讯地址: ".$address."\r\n");
fwrite($fd, "\r\n");
flock($fd, LOCK_UN);
fclose($fd);
echo "<script>setCookie('IDCARD','".$idcard."',60);</script>";
echo "<div style='font-size:18pt;color:red;'>恭喜你,提交成功!<a href='Index.php'>返回</a></div>";
}
//echo "<script language='javascript'>";
//echo "alert('恭喜你,提交成功');";
//echo "</script>";
//header("Location: Index.php");
}
catch(Exception $e)
{
echo "出错:".$e->getMessage();
}
?>
(没处理缩进问题,看起来是有点乱,因为用记事本写的,所以就没去管,多包涵)
虽然对于PHP我还是门外汉,但是对于这一晚上的成果我还是比较满意的,呵呵。语言都是有共同点的,接下来就慢慢深入吧
有一句话是很有道理的:很多东西都是被逼出来的!但这未尝不是一件好事,对吗.
分享到:
相关推荐
php程序php程序php程序php程序php程序
本文采用PHP技术开发了基于Web的php专题在线学习系统,并且对该系统的技术方案的选择、系统功能的设计和实现等进行了介绍。在这个系统中,采用的是php动态网页设计技术和mysql数据库,可以灵活的管理和发布各种资料...
一款简单的微信记账小程序,后端使用的是PHP。 一款简单的微信记账小程序,后端使用的是PHP。 一款简单的微信记账小程序,后端使用的是PHP。 一款简单的微信记账小程序,后端使用的是PHP。 一款简单的微信...
微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台...
微信小程序全套源代码(后台、小程序php) 基于微信开发小程序 很有学习价值
小程序小程序小程序php写的小程序小程序小程序php写的小程序小程序小程序php写的小程序小程序小程序php写的小程序小程序小程序php写的小程序小程序小程序php写的小程序小程序小程序php写的小程序小程序小程序php写的...
PHP 程序 下载 安装 PHP程序开发
基于PHP的疫情防控登记小程序源码 基于PHP的疫情防控登记小程序源码 基于PHP的疫情防控登记小程序源码 基于PHP的疫情防控登记小程序源码 基于PHP的疫情防控登记小程序源码 基于PHP的疫情防控登记小程序...
如果有意学习php的话,可以看这个小程序,益于熟悉php的开发环境
"课章节:第一章 PHP入门 "课时 "4学时 " "教学目的:通过学习,学生可以了解PHP程序的工作流程,并可以编写、运行简单 " "的PHP程序 " "教学重点:PHP程序工作流程以及PHP运行环境的安装、配置。 " "教学难点:PHP...
PHP小程序 PHP小程序PHP小程序PHP小程序PHP小程序PHP小程序PHP小程序PHP小程序
PHP实例程序PHP实例程序PHP实例程序PHP实例程序
搜一次视频程序(SYCCMS)是一套采用PHP MYSQL环境搭建的智能建站系统,只要五分钟,一个拥有海量视频讯息的专业网站就会呈现在你的眼前;本着免费开源的宗旨、利用程序优异的性能,在短短一年时间,我们就已经拥有...
很好的PHP学校程序,很好的php学习程序,想学PHP就来下载
PHP程序设计简明教程 PHP程序设计简明教程 PHP程序设计简明教程 PHP程序设计简明教程
+ 一款简单的微信共享记账小程序,后端使用的是thinkPHP6.0 + 非常轻便,容易学习,初学者可以借鉴学习。 + 学习,授权登录过程,学习最常见的数据处理 + 学习最简单的微信标签语法,网络请求~~~ + 开发者wx:hanyi...
PHP微信小程序之获取并解密用户数据获取openId和...$iv string 与用户数据一同返回的初始向量小程序端才能获取到。$data string 解密后的原文 ,不用管。 $session_key 第一步中获取到的 他会和openid 一起获取到)
一个简单的PHP程序代码一个简单的PHP程序代码一个简单的PHP程序代码一个简单的PHP程序代码一个简单的PHP程序代码
《PHP与MySQL程序设计 第4版 》pdf与源码 是全面讲述PHP与MySQL的经典之作 书中不但全面介绍了两种技术的核心特性 还讲解了如何高效地结合这两种技术构建健壮的数据驱动的应用程序 《PHP与MySQL程序设计 第4版 》...
php微信小程序全套源代码(后台、小程序php) 微信小程序,完整项目,源代码,后台,小程序 基于腾讯云