我这有个copy上传的程序,很简单,你看看
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>文件上传</title>
</head><body>
<?php
if($_POST['post_flag']==1)
{
$a=copy($myfile,"upload_file/".$myfile_name);
}
?>
<form enctype="multipart/form-data" action="index.php" method="post">
您的大名: <input type=text name=user><br>
文件名称: <input name="myfile" type="file"><br>
<input type="hidden" name="post_flag" value="1">
<input type="submit" value="送出">
</form>
</body>
</html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>文件上传</title>
</head><body>
<?php
if($_POST['post_flag']==1)
{
$a=copy($myfile,"upload_file/".$myfile_name);
}
?>
<form enctype="multipart/form-data" action="index.php" method="post">
您的大名: <input type=text name=user><br>
文件名称: <input name="myfile" type="file"><br>
<input type="hidden" name="post_flag" value="1">
<input type="submit" value="送出">
</form>
</body>
</html>
并且实现自动缩略图。
一个是上传窗口 upload.php
<table width="350" height="118" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border:1px solid #959594;">
<tr>
<td height="24"><div align="center">請提交設備圖片</div></td>
</tr>
<form enctype="multipart/form-data" action=upload_facility.php method=post>
<tr>
<td height="74" align="center">
<?
include ("conn.php");
$res=mysql_query("select * from facility ORDER by id desc" ,$db);
$myrow = mysql_fetch_array($res);
?>
<INPUT TYPE="hidden" name="id" value="<?echo $id;?>">
<input type=file name=upfile style="width:200;border:1 solid #9a9999; font-size:9pt; background-color:#ffffff" size="17">
</td>
</tr>
<tr>
<td align="center">
<input type=submit value='提交設備圖片' name="submit" style="width:100;border:1 solid #9a9999; font-size:9pt; background-color:#ffffff">
</td>
</tr>
</form></table>
一个是upload_pic.php<table width="300" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border:1px solid #959594;">
<tr>
<td align="center">
<?
if ($upfile_type=="image/pjpeg" || $upfile_type=="image/gif")
{
//小站图览栏目使用了一个生成缩略图函数,这个函数来自网络中。
//函数:
// 本函数从源文件取出图象,设定成指定大小,并输出到目的文件
// 源文件格式:gif,jpg,,png
// 目的文件格式:jpg
// $srcfile: 源文件
// $dstfile: 目标文件
// $dstW: 目标图片宽度
// $dstH: 目标文件高度
function makethumb($upfile,$dstFile,$newwight,$newheight) {
$data = GetImageSize($upfile,&$info);
switch ($data[2]) {
case 1:
$im = @ImageCreateFromGIF($upfile);
break;
case 2:
$im = @imagecreatefromjpeg($upfile);
break;
case 3:
$im = @ImageCreateFromPNG($upfile);
break;
}
$srcW=ImageSX($im);
$srcH=ImageSY($im);if($srcW>230||$srcH>160)
{
@$ratio=$srcH/$srcW;
if($ratio<1)
{
$newwidth="230";
@$newheight=$srcH*(230/$srcW);
}
else
{
$newheight="160";
$newwidth=$srcW*(160/$srcH);
}
}
else
{
$newheight=$srcH;
$newwidth=$srcW;
}$ni=ImageCreate($newwidth,$newheight);
ImageCopyResized($ni,$im,0,0,0,0,$newwidth,$newheight,$srcW,$srcH);
ImageJpeg($ni,$dstFile);
//$dstFile="upload/";
// 如果需要输出到浏览器,那么将上一句改为ImageJpeg($ni);
// 如果需要其它格式的图片,改动最后一句就可以了
}
//使用方法:
if($upfile_size>0)
{
$simage="facs".date('YmdHis',time()).substr($upfile_name,-4);
//$simage为生成缩略图文件名
$bimage="facb".date('YmdHis',time()).substr($upfile_name,-4);
//$bimage为原图上传后的文件名
$copymes = copy($upfile,"upload/$bimage");
$src_image="upload/".$bimage;
$dst_image="upload/".$simage;
makethumb($src_image,$dst_image,$newwidth,$newheight);} }
else
{
echo"<br><font color=#FF0000>請上传.jpg格式或者.gif格式的圖片!</font><br><br><a href=javascript:history.go(-1);>返回</a>";
die("");
}
//$copymes = copy($upfile,$filename);
if ($copymes) {
print("<font color=red>上传成功!</font>");
print("文件名稱$upfile_name<br>");
print("文件大小$upfile_size<br>");
echo "產品縮略圖片:<br><img src=\"$dst_image\"><br>";
echo "產品圖片:<br><img src=\"$src_image\" width=200 height=130><br>";echo "<font color=#FF0000>設備圖片修改添加成功!</font>";}else {
print("<font color=#FF0000>設備圖片修改添加失敗!</font><br><a href=javascript:history.go(-1);>返回</a>");
}
?><a href="javascript:window.close();">關閉窗口</a>
</td>
</tr>
</table>
注意copy语句,用的是'tmp_name',这是form提交后文件内容真正保存所在
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>文件上传</title>
</head><body>
<?php
if($_POST['post_flag']==1)
{
$a=copy($_FILES['myfile']['tmp_name'],$_FILES['myfile']['name']);
}
?>
<form enctype="multipart/form-data" method="post">
文件名称: <input name="myfile" type="file"><br>
<input type="hidden" name="post_flag" value="1">
<input type="submit" value="送出">
</form>
</body>
</html>