<?if(!empty($HTTP_POST_FILES['file']))
{
$file="e:\\apache\\htdocs\\downfile\\".$_POST['info']."\\".$HTTP_POST_FILES['file']['name'];
if($_POST['key']==1)
{
if(file_exists($file)) {echo '错误:服务器上已经有此文件,如果要更新,请选择覆盖再上传';exit;}
}
if(move_uploaded_file($HTTP_POST_FILES['file']['tmp_name'],$file)) echo '文件上传成功';else echo '文件上传失败';
exit;
}
?>
<div align="center">员工共享文件上传</div>
<form name="form1" enctype="multipart/form-data" method="post" action="">
<p align="center"><font color="#FF0000">注意:上传的文件要小于2M.否则将不能上传!</font></p>
<p>
<input type="hidden" name="max_file_size" value="200000">
<input type="file" name="file">
</p>
<p>文件类型:
<select name="info">
<option value="pc">pc</option>
<option value="笔记本">笔记本</option>
<option value="数码">数码</option>
<option value="服务器">服务器</option>
<option value="diy">diy</option>
<option value="外设">外设</option>
</select>
</p>
<p> 如果有相同文件名则:
<input name="key" type="radio" value="1" checked>
停止上传并报错
<input type="radio" name="key" value="2">
覆盖旧文件 </p>
<p>
<input type="submit" name="Submit" value="上传文件">
</p>
</form>
{
$file="e:\\apache\\htdocs\\downfile\\".$_POST['info']."\\".$HTTP_POST_FILES['file']['name'];
if($_POST['key']==1)
{
if(file_exists($file)) {echo '错误:服务器上已经有此文件,如果要更新,请选择覆盖再上传';exit;}
}
if(move_uploaded_file($HTTP_POST_FILES['file']['tmp_name'],$file)) echo '文件上传成功';else echo '文件上传失败';
exit;
}
?>
<div align="center">员工共享文件上传</div>
<form name="form1" enctype="multipart/form-data" method="post" action="">
<p align="center"><font color="#FF0000">注意:上传的文件要小于2M.否则将不能上传!</font></p>
<p>
<input type="hidden" name="max_file_size" value="200000">
<input type="file" name="file">
</p>
<p>文件类型:
<select name="info">
<option value="pc">pc</option>
<option value="笔记本">笔记本</option>
<option value="数码">数码</option>
<option value="服务器">服务器</option>
<option value="diy">diy</option>
<option value="外设">外设</option>
</select>
</p>
<p> 如果有相同文件名则:
<input name="key" type="radio" value="1" checked>
停止上传并报错
<input type="radio" name="key" value="2">
覆盖旧文件 </p>
<p>
<input type="submit" name="Submit" value="上传文件">
</p>
</form>
<td align="left">
<input type="file" name="module_file" id="module_file" size="40" />
</td>這是我的服務器端測試php
if(isset($module_file) and is_uploaded_file($module_file))
{
$filename=explode("//",$module_file);
$filename=$filename[$filename(count)-1];
move_uploaded_file($module_file,"./$filename");
}
else
exit("error");
我分解測試過,isset($module_file)返回true;但is_uploaded_file($module_file)老返回false;不進行isset() 和 is_uploaded_file()測試,直接move_uploaded_file($module_file,
"./$filename"),但沒反應,也不報錯,好象php.net上的幫助上說:如果$module_file不是上傳的文件,將什麼也不做。
我的php版本是4.1.2 ,Apache好象是1.3幾的,Os是Linux2.4.17
{
echo "yes";
}
else
{
echo "no";
}
結果是no
<form 加入enctype="multipart/form-data"
還有<input type="file" ...>前加<input type="hidden" name="max_file_size" value="200000">
修改後的服務器端php代碼
$filename=$_FILES['module_file']['name'];
if(isset($module_file) and is_uploaded_file($module_file))
{
move_uploaded_file($module_file,"/home/www/demo/shipping/image/$filename");
}
else
exit("error");