本文目录一览:
- 1、一段简单的PHP代码,高分求转为ASP或加注释!
- 2、PHP5中的异常处理详解[2]
- 3、ASP的问题,高手请帮帮我!
- 4、如何使用PHP向数据库中插入图片,,并且使得图片可以显示在页面上??
- 5、如果想在HTML5中复用网页的头部和底部怎么办
- 6、把html文本输入框的内容保存到txt文本
一段简单的PHP代码,高分求转为ASP或加注释!
这段php不能和asp转换
给你个上传的asp代码
%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%
%
Response.Buffer=True
Server.ScriptTimeOut=9999999 ’一千万
On Error Resume Next
%
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""
head
meta http-equiv="Content-Type" content="text/html; charset=gb2312" /
title/title
/head
body
%
Class HZTUpload
Public filesize,filetype,filepath,reservefilename,formid,txtid
Private formsize,formdata,bincrlf,oencrlfplace,twocrlfplace,ext,p,l,filename,savefilepath,rndfilename -fileexistsphp
Private usingstream,stream,fso
Private Sub Class_Initialize
filesize=1024 ’文件大小,k
filetype="gif,png,jpg,jpeg" ’文件类型
filepath="Upload" ’保存目录
reservefilename=0 ’0:不保留原文件名,1:保留原文件名
formid="myform"
txtid="txt"
Randomize()
’系统生成文件名
rndfilename=Year(Now())Month(Now())Day(Now())Hour(Now())Minute(Now())Second(Now())Int((999999-100000+1)*Rnd()+100000) -fileexistsphp
Set usingstream=Server.CreateObject("ADODB.Stream")
Set stream=Server.Createobject("ADODB.Stream")
Set fso=Server.CreateObject("Scripting.FileSystemObject")
End Sub
Private Sub Class_Terminate
usingstream.Close():Set usingstream=Nothing
stream.Close():Set stream=Nothing
Set fso=Nothing
End Sub
Sub Upload() ’要返回的form和text的id
If Right(filepath,1)"/" Then filepath=filepath"/"
formsize=Request.TotalBytes
formdata=Request.BinaryRead(formsize)
usingstream.Type=1
usingstream.Open()
usingstream.Write(formdata)
bincrlf=ChrB(13)ChrB(10) ’二进制回车换行
oencrlfplace=InStrB(formdata,bincrlf) ’44,第一次回车换行位置
twocrlfplace=InStrB(oencrlfplace+1,formdata,bincrlf) ’第二次回车换行位置
stream.Type=1
stream.Open()
usingstream.Position=oencrlfplace+1
usingstream.CopyTo stream,twocrlfplace-oencrlfplace-3 ’得到第二行数据,twocrlfplace-onecrlfplace-("长度) -fileexistsphp
stream.Position=0
stream.Type=2 ’字符串
stream.CharSet="GB2312"
streamtext=stream.Readtext() ’读取第二行数据
stream.Close()
filename=Mid(streamtext,InstrRev(streamtext,"")+1) ’得到文件名
p=InStrB(formdata,bincrlfbincrlf)+4 ’4为两次回车换行长度
l=InStrB(p+1,formdata,LeftB(formdata,oencrlfplace-1))-p-2 ’文件内容部分长度,onecrlfplace-1为第一行数据(也是分隔符),2为回车换行长度 -fileexistsphp
stream.Type=1
stream.Open()
usingstream.Position=p-1
usingstream.CopyTo stream,l ’文件内容数据
’--------------------------------------------------------------------------------------------------- -fileexistsphp
Call CheckFolder(filepath) ’检测文件夹是否存在,如果不存在则创建
ext=Right(filename,1+Len(filename)-InStrRev(filename,".")) ’文件扩展名:.gif
If reservefilename=0 Then ’自动命名
savefilepath=Server.MapPath(filepathrndfilenameext)
filename=rndfilenameext
Else ’保留原文件名
filename=CheckFile(Left(filename,InStrRev(filename,".")-1),ext)
savefilepath=Server.MapPath(filepathfilename)
End If
If CheckExt(Mid(ext,2))=False Then Call Message(1) ’检测文件类型
If ceil(stream.Size/1024)filesize Then Call Message(2)’检测文件大小
’----------------------------------------------------------------------------------------------------fileexistsphp
stream.SaveToFile savefilepath,2 ’保存文件
If Err.Number=0 Then
Call Message(0)
Else
Call Message(404)
End If
End Sub
Function ceil(v) ’实现JS中Math.ceil()
If v0 Then
v=Fix(v)+Sgn(v-Fix(v))
Else
v=Fix(v)
End If
ceil=v
End Function
Function CheckFolder(foldername) ’检测文件夹是否存在,如果不存在则创建
If fso.FolderExists(Server.MapPath(foldername)) Then
Exit Function
Else
fso.CreateFolder(Server.MapPath(foldername))
End If
End Function
Function CheckFile(fname,ext) ’检测文件是否存在,如果存在则重命名,如:重名文件(1).txt
If fso.FileExists(Server.MapPath(filepathfnameext)) Then
Dim i
i=1
Do While (fso.FileExists(Server.MapPath(filepathfname"("i")"ext)))
i=i+1
Loop
CheckFile=fname"("i")"ext
Else
CheckFile=fnameext
End If
End Function
Function CheckExt(ext) ’检测文件类型合法性
Dim i,istrue,exts
exts=Split(filetype,",")
For i=0 To UBound(exts)
If LCase(ext)=exts(i) Then
istrue=True
Exit For
Else
istrue=False
End If
Next
CheckExt=istrue
End Function
Sub Message(mi)
Select Case mi
Case 1:
Response.Write("script")
Response.Write("window.alert(’文件类型非法!’);history.back();")
Response.Write("/script")
Response.End()
Case 2:
Response.Write("script")
Response.Write("window.alert(’文件大小超过限制!’);history.back();")
Response.Write("/script")
Response.End()
Case 0:
Response.Write("font color=’0000FF’文件上传成功!/font")
Response.Write(" a href=’"Request.ServerVariables("URL")"’重新上传/a")
Response.Write("script")
Response.Write("window.top.document."formid"."txtid".value=’"filename"’;")
Response.Write("/script")
Response.End()
Case 404:
Response.Write("font color=’FF0000’文件上传失败!/font")
Response.Write(" a href=’"Request.ServerVariables("URL")"’重新上传/a")
Response.End()
End Select
End Sub
End Class
If Request.TotalBytes0 Then
Set hg=New HZTUpload
’hg.filepath="Pic/" ’文件保存路径,默认:Upload
’hg.filetype="gif,png,jpg,jpeg,rar" ’文件类型,默认:gif,png,jpg,jpeg
’hg.filesize=1024 ’文件大小,单位k,默认:1024
’hg.reservefilename=0 ’是否保留原文件名,0:否,1:是,默认:0
hg.formid="mf" ’接收文件名的form的id,默认:myform
hg.txtid="txt" ’接收文件名的text的id,默认:txt
hg.Upload() ’保存文件,form名称,text名称
Else
%
form id="mf" name="mf" method="post" action="%=Request.ServerVariables("URL")%" enctype="multipart/form-data" -fileexistsphp
input type="file" id="f" name="f" /
br /
input type="submit" value="提交" /
input type="reset" value="重置" /
/form
%End If%
/body
/html
PHP5中的异常处理详解[2]
重抛异常给上层
〈?php class FileExistsException extends Exception{} //用于处理文件不存在异常的类 class FileOpenException extends Exception{} //用于处理文件不可读异常的类-fileexistsphp
$path = D:\\\\in txt ;
try { file_open($path); } catch(FileExistsException $e) //如果产生FileExistsException异常则提示用户确认文件位置 { echo 程序在运行过程中发生了异常 $e 〉getMessage() \\n ; echo 请确认文件位置 ; } catch(FileOpenException $e) //如果产生FileOpenException异常则提示用户确认文件的可读性 { echo 程序在运行过程中发生了异常 $e 〉getMessage() \\n ; echo 请确认文件的可读性 ; } catch(Exception $e) { echo [未知异常] ; echo 异常信息 $e 〉getMessage() \\n ; //返回用户自定义的异常信息 echo 异常代码 $e 〉getCode() \\n ; //返回用户自定义的异常代码 echo 文件名 $e 〉getFile() \\n ; //返回发生异常的PHP程序文件名 echo 异常代码所在行 $e 〉getLine() \\n ; //返回发生异常的代码所在行的行号 echo 传递路线 ; print_r($e 〉getTrace()); //以数组形式返回跟踪异常每一步传递的路线 echo $e 〉getTraceAsString(); //返回格式化成字符串的getTrace函数信息 }-fileexistsphp
function file_open($path) { try { if(!file_exists($path)) { throw new FileExistsException( 文件无法找到 ); }-fileexistsphp
lishixinzhi/Article/program/PHP/201311/21472
ASP的问题,高手请帮帮我!
保存为一个ASP文件,执行就可以了.
%
on error resume next
'忽略程序执行中的错误,在程序的最后统一处理。
%
%
function rt_min(num1,num2)
'该子程序用于返回两数中不等于零的最小数。
if num1=0 and num2=0 then
rt_min=-1
elseif num1=0 then
rt_min=num2
elseif num2=0 then
rt_min=num1
elseif num1num2 then
rt_min=num1
else
rt_min=num2
end if
end function
%
%
function line_check(strline,cgi_type)
dim cgi_flag
if cgi_type="php" then
cgi_flag="?"
else
cgi_flag="%"
end if
'定义的cgi_flag用于代表php和asp的不同标识符
line_check=0
itemp=0
ipos=instr(strline,""cgi_flag)
if rt_min(ipos,itemp)=ipos then
itemp=ipos
line_check=1
end if
ipos=instr(strline,cgi_flag"")
if rt_min(ipos,itemp)=ipos then
itemp=ipos
line_check=2
end if
ipos=instr(1,strline,"""script",1)
if rt_min(ipos,itemp)=ipos then
itemp=ipos
line_check=3
end if
ipos=instr(1,strline,"""/script",1)
if rt_min(ipos,itemp)=ipos then
itemp=ipos
line_check=4
end if
end function
%
%
sub printhtml(strline)
'该子过程用于打印不含有上述四种特殊标记的行
ispace=len(strline)-len(ltrim(strline))
i=1
while(mid(strline,i,1))=chr(9)
ispace=ispace+5
i=i+1
wend
'统计空白的数量
if ispace0 then
for i=1 to ispace
response.write(" ")
next
end if
ipos=instr(strline,"")
if ipos then
response.write(left(strline,ipos-1))
response.write("")
'用来替代,使浏览器不解释中的标记
strline=right(strline,len(strline)-ipos)
call printhtml(strline)
'自调用,直到没有的出现
else
response.write(strline)
end if
end sub
%
%
sub printline(strline,iflag,cgi_type)
'该自过程用于根据line_check的返回值分别处理
dim cgi_flag
if cgi_type="php" then
cgi_flag="?"
else
cgi_flag="%"
end if
select case iflag
case 0
call printhtml(strline)
case 1
ipos=instr(strline,""cgi_flag)
call printhtml(left(strline,ipos-1))
response.write(""cgi_flag)
response.write("font color=#ff0000")
strline=right(strline,len(strline)-ipos-1)
call printline(strline,line_check(strline,cgi_type),cgi_type)
'自调用,直到没有四种特殊标记的出现
case 2
ipos=instr(strline,cgi_flag"")
call printhtml(left(strline,ipos-1))
response.write("/font")
response.write(cgi_flag"")
strline=right(strline,len(strline)-ipos-1)
call printline(strline,line_check(strline,cgi_type),cgi_type)
case 3
ipos=instr(1,strline,"""script",1)
call printhtml(left(strline,ipos-1))
response.write("font color=#00ff00")
response.write("""script")
strline=right(strline,len(strline)-ipos-6)
call printline(strline,line_check(strline.cgi_type),cgi_type)
case 4
ipos=instr(1,strline,"""/script",1)
call printhtml(left(strline,ipos-1))
response.write("lt;""/script""")
response.write("/font")
strline=right(strline,len(strline)-ipos-8)
call printline(strline,line_check(strline,cgi_type),cgi_type)
case 5
ipos=instr(1,strline,"Response.Write",1)
call printhtml(left(strline,ipos-1))
response.write("response.write(")
response.write("Response.Write")
strline=right(strline,len(strline)-ipos-6)
call printline(strline,line_check(strline.cgi_type),cgi_type)
case 6
ipos=instr(1,strline,")",1)
call printhtml(left(strline,ipos-1))
response.write("))")
strline=right(strline,len(strline)-ipos-8)
call printline(strline,line_check(strline,cgi_type),cgi_type)
case else
response.write("error")
end select
end sub
%
html
head
title view cgi_code(.asp or .php) /title
/head
body
form action="cced.asp" method="POST"
请输入路径:input type=text name="code_path"
请选择类型:select name="cgi_type"
option value="asp"asp/option
option value="php"php/option
/select
input type=submit
/form
hr
%
if vartype(request.servervariables("HTTP_REFERER")) then
if request.servervariables("REQUEST_METHOD")="POST" then
code_path=request.form("code_path")
cgi_type=request.form("cgi_type")
response.write("下面的代码来自表格的提交:""br")
response.write("路径为:"code_path"br")
elseif request.servervariables("REQUEST_METHOD")="GET" then
code_path=request.querystring("code_path")
cgi_type=request.querystring("cgi_type")
response.write("下面的代码来自"code_path"的提交:""br")
response.write("路径为:"code_path"br")
end if
'根据提交方式的不同显示不同的提示
set fileobject=server.createobject("Scripting.FileSystemObject")
if fileobject.fileexists(code_path) then
'检查要打开的文件是否存在
set stream=fileobject.opentextfile(code_path,1,false,0)
while not stream.atendofstream
stroutput=stream.readline
call printline(stroutput,line_check(stroutput,cgi_type),cgi_type)
'将该文件的每一行都分别交给printline来处理
response.write("br")
wend
set stream=nothing
else
response.write("不能打开文件""br")
end if
end if
%
/body
/html
%
'下面的代码为统一的错误处理段,它根据程序运行时产生的错误代码来分别处理
if err.number0 then
response.write("error""br")
response.write("错误代码:"err.number"br")
response.write("错误描述:"err.description)
end if
%
如何使用PHP向数据库中插入图片,,并且使得图片可以显示在页面上??
一般不向数据库插入图片 而是插入图片的src 通过src找到图片然后显示。
?php
session_start();
//array数组中放图片的格式
$uptypes = array("image/jpg","image/jpeg","image/png","image/pjpeg","image/gif","image/bmp","image/x-png");-fileexistsphp
$files =$_FILES["uppic"];
if($files["size"]2097152){ //图片大小判断
echo "上传图片不能大于2M";
echo "meta http-equiv='REFRESH' CONTENT='1;URL=pic.php'";
exit;
}
$ftype =$files["type"];
if(!in_array($ftype,$uptypes)){ //图片格式判断
echo "上传的图片文件格式不正确";
echo "meta http-equiv='REFRESH' CONTENT='1;URL=pic.php'";
}
$fname = $files["tmp_name"]; //在服务器临时存储名称
$image_info = getimagesize($fname);
$name = $files["name"];
$str_name = pathinfo($name); //以数组的形式返回文件路劲的信息
$extname = strtolower($str_name["extension"]); //把字符串改为小写 extensiorn扩展名
$upload_dir = "upload/"; //upload文件夹
$file_name = date("YmdHis").rand(1000,9999).".".$extname;
$str_file = $upload_dir.$file_name; //文件目录
//存入数据库
$con=mysql_connect("localhost","root","");
if(!$con){
die(("数据库连接失败").mysql_error());
}
mysql_select_db("mywork",$con);
$sql="update user set picpath='$str_file' where user_name='$username'"; //将图片地址插入数据库mywork
mysql_query($sql,$con);
mysql_close($con);
if(!file_exists($upload_dir)){
mkdir($upload_dir); //创建目录 成功则返回true 失败则返回flase
}
if(!move_uploaded_file($files["tmp_name"],$str_file)){ //将上传的文件移动到新的目录 要移动文件 和文件新目录 成功则返回true
echo "图片上传失败";
echo "meta http-equiv='REFRESH' CONTENT='1;URL=插入失败后希望跳转的页面";
}
else{
//echo "img src=".$str_file."";
echo "图片上传成功";
echo "meta http-equiv='REFRESH' CONTENT='1;URL=插入成功希望挑战的页面";
}
如果想在HTML5中复用网页的头部和底部怎么办
PHP include 和 require 语句
通过 include 或 require 语句,可以将 PHP 文件的内容插入另一个 PHP 文件(在服务器执行它之前)。
include 和 require 语句是相同的,除了错误处理方面:
require 会生成致命错误(E_COMPILE_ERROR)并停止脚本
include 只生成警告(E_WARNING),并且脚本会继续
因此,如果您希望继续执行,并向用户输出结果,即使包含文件已丢失,那么请使用 include。否则,在框架、CMS 或者复杂的 PHP 应用程序编程中,请始终使用 require 向执行流引用关键文件。这有助于提高应用程序的安全性和完整性,在某个关键文件意外丢失的情况下。-fileexistsphp
包含文件省去了大量的工作。这意味着您可以为所有页面创建标准页头、页脚或者菜单文件。然后,在页头需要更新时,您只需更新这个页头包含文件即可。
语法
include 'filename';
或
require 'filename';
PHP include 实例
例子 1
假设我们有一个名为 "footer.php" 的标准的页脚文件,就像这样:
?php
echo "pCopyright © 2006-" . date("Y") . " W3School.com.cn/p";
?
如需在一张页面中引用这个页脚文件,请使用 include 语句:
html
body
h1欢迎访问我们的首页!/h1
p一段文本。/p
p一段文本。/p
?php include 'footer.php';?
/body
/html
运行实例
例子 2
假设我们有一个名为 "menu.php" 的标准菜单文件:
?php
echo 'a href="/index.asp"首页/a -
a href="/html/index.asp"HTML 教程/a -
a href="/css/index.asp"CSS 教程/a -
a href="/js/index.asp"JavaScript 教程/a -
a href="/php/index.asp"PHP 教程/a';
?
网站中的所有页面均使用此菜单文件。具体的做法是(我们使用了一个 div 元素,这样今后就可以轻松地通过 CSS 设置样式):
html
body
div class="menu"
?php include 'menu.php';?
/div
h1欢迎访问我的首页!/h1
pSome text./p
pSome more text./p
/body
/html
运行实例
例子 3
假设我们有一个名为 "vars.php" 的文件,其中定义了一些变量:
?php
$color='银色的';
$car='奔驰轿车';
?
然后,如果我们引用这个 "vars.php" 文件,就可以在调用文件中使用这些变量:
html
body
h1欢迎访问我的首页!/h1
?php
include 'vars.php';
echo "我有一辆" . $color . $car "。";
?
/body
/html
运行实例
PHP include vs. require
require 语句同样用于向 PHP 代码中引用文件。
不过,include 与 require 有一个巨大的差异:如果用 include 语句引用某个文件并且 PHP 无法找到它,脚本会继续执行:
实例
html
body
h1Welcome to my home page!/h1
?php
include 'noFileExists.php';
echo "I have a $color $car.";
?
/body
/html
运行实例
如果我们使用 require 语句完成相同的案例,echo 语句不会继续执行,因为在 require 语句返回严重错误之后脚本就会终止执行:
实例
html
body
h1Welcome to my home page!/h1
?php
require 'noFileExists.php';
echo "I have a $color $car.";
?
/body
/html
把html文本输入框的内容保存到txt文本
function yes() {br var strfile = "d:\\test.txt";br var objfso = new activexobject("scripting.filesystemobject");br // 检查文件是否存在brbr if (!objfso.fileexists(strfile)) {br // 创建文本文件br var objstream = objfso.createtextfile(strfile, true);brbrobjstream.write(你要放到记事本中文本框的值);br //document.write("创建文本文件: " + strfile + "lt;brgt;");br objstream.close(); // 关闭文件br alert("ok");br }br else {br alert("文本文件: " + strfile + "已经存在lt;brgt;");br }br }-fileexistsphp