发信人: showtop()
整理人: sltongyong(2000-08-10 10:39:59), 站内信件
|
书接上回,我们已经知道列出最近文章与人气最旺文章的方法,下面我们来看看 如何实现发表文章的,其实知道了文件的结构,这一部分是很简单的了。
1、也先介绍一下两个函数
show_err($message);在一个窗口中以自定义的格式显示一句错误,应该不用多说 吧。就是先作好这个窗口,然后在某个地方显示$message……
在判断用户是否给出了一个真实的email地址时,我用到了正则表达式。
<?php
function is_valid_email_addr($email_addr)
{
return eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$",$ema il_addr);
}
?>
要不要说这个表达式的含义呢?我看还是免了吧。
大家可以在“PHP中文用户”找到正则表达式的详细说明。
2、发表文章
从addpage.php3中的表单中接收到以下变量(至于表单的结构,限于篇幅,我就不 说了):
$name 文本,作者大名
$emailadd 文本,作者email
$item 单选,发表栏目
$title 文本,文章标题
$content 多行文本,文章内容
处理这些变量,如下:
<?php
require("err.php3");
require("isemail.php3");
if($name =="" or $emailadd =="" or $title ==""){
//至少得给出大名、email和标题
show_err("发表文章请将信息填写完整!");
exit;
}
else {
if(!is_valid_email_addr($emailadd)) {
//判断一下是否真的是email地址
show_err("别玩我了,朋友!给个真的email吧。");
exit;
}
$c=nl2br($content);//把回车换成<br>
$fbn="../page/".time(); //这里用当前时间生成文件名
$fp=fopen($fbn.".info","w"); //建立文件,写入信息
fputs($fp,$title."\n");fputs($fp,$name."\n");fputs($fp,$emailadd."\n" );
fputs($fp,$item."\n");
fputs($fp,"0\n");fputs($fp,"0");
fclose($fp);
//改文件属性,因为以后我们要对它进行写操作,加点击数和回复数!!!
chmod($fbn.".info",0777);
$fp=fopen($fbn.".body","w"); //写文章内容
fputs($fp,$c);
fclose($fp);
}
?>
写到这里,我都有点不想写下去了,各位是不是觉得太简单了?!
的确,其实我讲了我的文件结构,想必有很多朋友已经知道这个论坛是如何实现 的了。现在我罗嗦的,其实都是一些很基本的PHP语法的应用。
好了,为了两位斑猪的厚爱,我还是要厚着老脸写下去。
下一节我们讲如何显示文章与评论。
<待续>
-- 让我的所欲渐化虚无
让我的付出渐近无倦
E-mail : [email protected]
url : http://sbiotech.onchina.net《生物技术快报》
http://www.sharetop.onchina.net 《自由岛论坛》
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 210.75.57.220]
|
|