再发三个自己经常用的函数
时间:2009-03-13
来源:互联网
//构造防灌水防外部提交函数---------------------------------------------------------------------------------------------------
//使用Session进行判定:
//填写表单的页面中,我们在最前端加上:$_SESSION["allformpost"]=time(); //登记填写时的时间
//只要在处理用户提交数据前加上该函数即可。
// if ( $_POST['submit'] )
// {
// preventPour();//防灌水
// .............//程序代码
// }
function preventPour()
{
if(strtoupper($_SERVER["REQUEST_METHOD"])!=”POST”){ die("错误:请勿在外部提交。"); } //检查页面获得方法是否为POST
if(!isset($_SESSION["allformpost"]) or (time()-$_SESSION["allformpost"] < 5)){ die("错误:请勿在外部提交。"); } //检查留言填写时的时间
if(isset($_SESSION["posttime"]) and (time()-$_SESSION["posttime"] < 120)){ die("错误:两次提交留言的间隔不得少于 2 分钟。"); } //检查留言间隔
unset($_SESSION["allformpost"]); //注销allformpost变量以防止一次进入填写页面多次进行提交
$_SESSION["posttime"]=time(); //登记发送留言的时间,防止灌水或恶意攻击
}
//定义图片采集函数 $url 为目标地址 $filename 为指定名称----------------------------------------------------------------
//调用图片采集函数 如名称为空 名称用时间定义 格式为dMYHis
//$img=getImage($pic,"");
//if($img){
//...
//数据处理及保存
//...
//}else{}
function getImage($url,$filename="") {
// if(!$url) return false; //判断是否有目标地址 如没有跳出
if (!$url){ //判断是否有目标地址 如没有用默认图片连接
$filename= "upimg/my.gif"; //绝对路径
}else{
if(!$filename) { //判断是否指定了图片名称
$ext=strrchr(strtolower($url),"."); //判断图片 类型
if($ext!=".gif" && $ext!=".jpg" && $ext!=".png") return false;
$filename=date("dMYHis").$ext; //定义本地图片名称
$filename= "upimg/".$filename; //绝对路径
//$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];//使用简短名称变量
//$filename= "$DOCUMENT_ROOT/../img/".$filename;
}
ob_start(); //打开缓冲区
if([email=!@readfile($url]!@readfile($url[/email])) return false; //读入图片文件并写入到输出缓冲 如地址图片错误 跳出
$img = ob_get_contents(); //取得缓冲的内容到 $img
ob_end_clean(); //删除内部缓冲区的内容,并且关闭内部缓冲区
[email=$fp2=@fopen($filename]$fp2=@fopen($filename[/email], "a"); //打开图片文件已本地图片名称 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
fwrite($fp2,$img); //缓冲的内容写入文件中
fclose($fp2); //关闭文件
}
return $filename; //返回文件名
}
//静态页生成函数 $url 为目标地址 $filename 为指定名称----------------------------------------------------------------
//调用图片采集函数 如名称为空 名称用时间定义 格式为dMYHis
//$img=getImage($pic,"");
//if($img){
//...
//数据处理及保存
//...
//}else{}
function get_file($get_data,$get_name) {
if(!$get_data) return false; //判断是否有目标地址 如没有跳出
if(!$get_name) return false; //判断是否指定了图片名称
$get_name=$get_name.'.html'; //定义本地图片名称
$get_name= "htmls/".$get_name; //绝对路径
//$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];//使用简短名称变量
//$filename= "$DOCUMENT_ROOT/../img/".$filename;
[email=$fp3=@fopen($get_name]$fp3=@fopen($get_name[/email], "w"); //打开图片文件已本地图片名称 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
if (fwrite($fp3,$get_data)){//缓冲的内容写入文件中
fclose($fp3); //关闭文件
return $get_name; //返回文件名
} else {
return false;
}
}
[/php]
作者: joj_79 发布时间: 2009-03-13
作者: E蜗牛 发布时间: 2009-03-14
作者: qihang35 发布时间: 2009-03-14
LZ帮忙解释下
[email=$fp3=@fopen($get_name]$fp3=@fopen($get_name[/email], "w");
作者: 苤子 发布时间: 2009-03-15
作者: yfhanbing 发布时间: 2009-03-16
看不懂这句
LZ帮忙解释下
$fp3=@fopen($get_name, "w");
可以吧和表情删除
作者: 林轻灵 发布时间: 2009-03-16
这个应该是UBB自动识别EMAIL邮件加上的
可以吧和表情删除
作者: joj_79 发布时间: 2009-03-16
不过要是附带点应用实例更好些。。。呵呵
作者: kakashilw 发布时间: 2009-03-18
作者: xinxing520 发布时间: 2009-03-18

好帖收藏~
作者: JOJ_97 发布时间: 2009-03-20
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28