仓酷云

标题: PHP网站制作之功效掌握完整的PHP上载法式(1) [打印本页]

作者: 冷月葬花魂    时间: 2015-2-16 00:26
标题: PHP网站制作之功效掌握完整的PHP上载法式(1)
不过还好,PHP语言给出的语法错误很详细,只要稍微熟悉一点之后,看错误提示就能很容易找出错误所在的。PHP还有一个特别好用的调试功能,在PHP语句中,你可以随时用echo来输出结果。   

■主控法式 upfile.php

<?

####################################################################

#Project Name: Test

#Author : lanf

#Home Page: http://lanf.yeah.net

#E-mail:imbusy@263.net

#Time: 2001 . 9

####################################################################



##验证身份函数

function getUserRight($username,$user){

if($username==$user' '$user=="*") return true;

echo "<html>您没有这个操作ID的权限。<a href=javascript:window.history.back()>点这里前往修正</a></html>";

return false;

}

##验证身份函数停止



##文件类型验证函数

function getFileType($filename,$fileType){

$fileExtent=strrchr($filename, ".");$fileExtent=substr($fileExtent,1);

$fileExtent=strtolower($fileExtent);$fileType=strtolower($fileType);

if(strstr($fileType,"jpg")|| strstr($fileType,"gif")' 'strstr($fileType,"png") ){

if(!GetImageSize($imgfile)) {

echo "<html>这个操作ID不答应上传此品种型文件。<a href=javascript:window.history.back()>点这里前往修正</a></html>";

return false;};

};

if(strstr($fileType,$fileExtent )' '$fileType="*") return true;

echo "<html>这个操作ID不答应上传此品种型文件。<a href=javascript:window.history.back()>点这里前往修正</a></html>";

return false;

}

##文件类型验证函数停止



##上传站点验证函数

function checkFromSiteErr($siteFrom,$limitSite){

//获得站点域名的ip地址;http://202.108.240.75 www.yyy.com

//echo $siteFrom;

$step1=substr($siteFrom,7);//echo "<br>$step1";

$step2=strpos($step1, "/");//echo "<br>$step2";

$step3=substr($step1,0,$step2);//echo "<br>$step3";

//if(eregi("^[0-9]+.[0-9]+.[0-9]+.[0-9]+$",$step3)){;}else{

$referIP=gethostbyname($step3);//echo "<br>ip:$referIP<br>";

//}

//到这里,$referIP已是一个上一个页面的ip地址。



//婚配相干的内容。

if(strpos($limitSite,",",1)){

//申明是一组值

$pieces = explode(",",$limitSite);

while(list($key,$value) = each($pieces)){

$limit=gethostbyname($value);

if($starPos=strpos($limit,"*")){

//带*号的IP

$tempLimit=substr($limit,0,$starPos);

$tempFromIP=substr($referIP,0,$starPos);

if($tempLimit==$tempFromIP){

return false;

}else{

continue;

};

}else{

//不带*号的IP

if($limit==$referIP){

return false;

}else{

continue;

};

};

}

echo "<html>毛病的上传站点#16。<a href=javascript:window.close()>点这里封闭窗口</a></html>";

return true;

}else{

//申明只要一个限制

$limit=gethostbyname($limitSite);

if($starPos=strpos($limit,"*")){

//带*号的IP

$tempLimit=substr($limit,0,$starPos);

$tempFromIP=substr($referIP,0,$starPos);

if($tempLimit==$tempFromIP){

return false;

}else{

echo "<html>毛病的上传站点。<a href=javascript:window.close()>点这里封闭窗口</a></html>";

return true;

};

}else{

//不带*号的IP

if($limit==$referIP){

return false;

}else{

echo "<html>毛病的上传站点。<a href=javascript:window.close()>点这里封闭窗口</a></html>";

return true;

};

};

}

};

##上传站点验证函数停止



##日记纪录函数

function putLog($actionID,$message,$flag="a"){

if(!file_exists("./log")){

echo "以后目次没有创立属性为0777的log目次,正在测验考试创立……";

if(@mkdir("./log",0777)){echo "创立胜利!!!";}else{echo "掉败!权限缺乏,请手动创立 ./log 。<br> 日记没有被纪录……"; return false;}

}

$logfile="./log/".$actionID.$flag.".log";

$cmdstr="echo "".$message."" >> ".$logfile;

if (!file_exists($logfile)) {passthru("touch ".$logfile); chmod($logfile,0777);}

passthru($cmdstr);

return true;

};

##日记纪录函数



##取设置装备摆设文件参数函数

function get_config($conf,$actionID="",$actionType=""){

//$conf 设置装备摆设文件名,$actionID 操作ID ,$actionType 操作类型

global $targetDir,$user,$maxLength,$fileType,$checkFile,$limitSite,$callback;



$actionID=trim($actionID);

if($actionID=="") return false;

$keylength=strlen($actionID);



$fileArray=file($conf);



$canshuZoneId=0;



if($actionType=="upload"){

//假设是上传文件的话

while (list($key,$value) = each($fileArray)) {

$value=trim($value);

//判别参数区域,将参数提取限制在上传文件设置区

$Zone_temp=substr($value,0,1);

if($Zone_temp=="["){//入手下手一个参数区域

if(strstr($value, "up")){
说说这一个月左右的学习情况和心得吧!我个人认为,既然决定了去做一件事,那就要以认真的态度去对待!既然决定来学习了,那不管当初是抱着怎样的心态来到这个培训班的,都要让自己认真的投入到学习中。
作者: 愤怒的大鸟    时间: 2015-2-16 02:14
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
作者: 小女巫    时间: 2015-2-16 21:59
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
作者: 谁可相欹    时间: 2015-2-17 08:52
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
作者: 小魔女    时间: 2015-3-1 16:59
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
作者: 兰色精灵    时间: 2015-3-10 20:45
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
作者: 柔情似水    时间: 2015-3-17 01:09
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
作者: 透明    时间: 2015-3-23 10:52
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
作者: 变相怪杰    时间: 2015-3-26 13:57
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
作者: 再现理想    时间: 2015-4-14 04:27
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
作者: 分手快乐    时间: 2015-4-18 13:42
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
作者: 爱飞    时间: 2015-4-24 22:38
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
作者: 精灵巫婆    时间: 2015-5-1 20:11
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
作者: 因胸联盟    时间: 2015-5-12 09:54
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
作者: 深爱那片海    时间: 2015-5-12 10:38
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
作者: 蒙在股里    时间: 2015-6-8 02:32
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
作者: 若相依    时间: 2015-6-26 21:12
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
作者: 海妖    时间: 2015-7-7 19:28
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
作者: 老尸    时间: 2015-7-10 21:31
建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。
作者: 金色的骷髅    时间: 2015-7-11 19:13
兴趣是最好的老师,百度是最好的词典。
作者: 只想知道    时间: 2015-7-15 07:54
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、




欢迎光临 仓酷云 (http://www.ckuyun.com/) Powered by Discuz! X3.2