php5.4 文件上传问题 5.4以前 $_FILE['file']['tmp_name'] 存储的是历史文件 5.4怎么是tem/phpXXXX了
我的html代码<html><head><title></title></head><body><center><formmethod="post"enctype="mu...
我的html代码
<html>
<head>
<title></title>
</head>
<body>
<center>
<form method="post" enctype="multipart/form-data" action="./get_file.php?act=uploadfile" >
<input type="file" id="file" name="file">
<input type="submit" value="上传">
</form>
</center>
</body>
</html>
PHP代码:
<?php
$action = isset($_GET['act']) ? $_GET['act'] : '';
if('uploadfile' == $action)
{
if (file_exists("./upload" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
$res = move_uploaded_file($_FILES["file"]["tmp_name"],"./upload" . $_FILES["file"]["name"]);
if($res)
{
echo "Stored in: " . "./upload" . $_FILES["file"]["name"];
}else
{
echo "move false";
}
}
}
标题写错了 是临时文件 展开
<html>
<head>
<title></title>
</head>
<body>
<center>
<form method="post" enctype="multipart/form-data" action="./get_file.php?act=uploadfile" >
<input type="file" id="file" name="file">
<input type="submit" value="上传">
</form>
</center>
</body>
</html>
PHP代码:
<?php
$action = isset($_GET['act']) ? $_GET['act'] : '';
if('uploadfile' == $action)
{
if (file_exists("./upload" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
$res = move_uploaded_file($_FILES["file"]["tmp_name"],"./upload" . $_FILES["file"]["name"]);
if($res)
{
echo "Stored in: " . "./upload" . $_FILES["file"]["name"];
}else
{
echo "move false";
}
}
}
标题写错了 是临时文件 展开
展开全部
PHP move_uploaded_file函数($_FILES[’file’][’tmp_name’]临时文件路径问题
表单post方法上传文件,代码如下,可能是写入权限的问题,我用的虚拟主机,下面的$uploadfile路径应该是什么呢?
if (!move_uploaded_file($_FILES[’upfile’][’tmp_name’],$uploadfile))
{
echo "文件上传失败,错误信息:".$_FILES[’upfile’][’error’]."<br>";
print_r($_FILES);
}
文件上传失败,错误信息:0
Array ( [upfile] => Array ( [name] => 106363.jpg [type] => image/jpeg [tmp_name] => C:\WINDOWS\temp\phpFC.tmp [error] => 0 [size] => 2450 ) )
hi8 14:54:34
$uploadfile = /listen/web/网站目录 这样可以吗?
这个是PHP ,move_uploaded_file上传函数, 如果上传失败,则输出错误信息。
if (!move_uploaded_file($_FILES[’upfile’][’tmp_name’],$uploadfile))
{
echo "文件上传失败,错误信息:".$_FILES[’upfile’][’error’]."<br>";
print_r($_FILES);
}
这个是页面输出结果
文件上传失败,错误信息:0
Array ( [upfile] => Array ( [name] => 106363.jpg [type] => image/jpeg [tmp_name] => C:\WINDOWS\temp\phpFC.tmp [error] => 0 [size] => 2450 ) )
文件上传失败,错误信息:0 错误信息是0的话, 应该是上传成功了才对的。 但是网站相关目录里找不到。
$uploadfile 是我上传的文件的路径。 “/lis....../we...../网站目录”
“当主机开通后会在自动生成3个文件夹:"web、db、log",请将您的文件上传到"web"目录下。。 ”
“传WEB” 啊??
测试结论:
$uploadfile用相对地址: $uploadfile="upimages/.$_FILES[’upfile’][’name’]"
测试正确的代码贴出如下,请参考:
function getname($exname){
$dir = "upimages/"; //2009.11.25
if(!is_dir($dir)){
mkdir($dir,0777);
}
$time=time();
$name=$time.".".$exname;
return $dir.$name;
}
$exname=strtolower(substr($_FILES[’upfile’][’name’],(strrpos($_FILES[’upfile’][’name’],’.’)+1)));
if ((($_FILES["upfile"]["type"] == "image/gif")
|| ($_FILES["upfile"]["type"] == "image/jpeg")
|| ($_FILES["upfile"]["type"] == "image/pjpeg"))
&& ($_FILES["upfile"]["size"] < 80000))
{
$uploadfile = getname($exname);
if (move_uploaded_file($_FILES[’upfile’][’tmp_name’],$uploadfile))
{
if(!trim($_FILES[’upfile’][’name’]=""))
{
$uploadfile="/shopsale/admin/".$uploadfile;
}
else
{
$uploadfile="";
}
mysql_query("insert into tb_,);
echo "<script>alert(’商品".$mingcheng."添加成功!’);window.location.href=’addproducts.php’;</script>";
}
else
{
echo "文件上传失败,错误信息:".$_FILES[’upfile’][’error’]."<br>";
print_r($_FILES);
}
}
else{
echo "无效的文件类型 Invalid file <br> 或文件大小超过80k";
}
表单post方法上传文件,代码如下,可能是写入权限的问题,我用的虚拟主机,下面的$uploadfile路径应该是什么呢?
if (!move_uploaded_file($_FILES[’upfile’][’tmp_name’],$uploadfile))
{
echo "文件上传失败,错误信息:".$_FILES[’upfile’][’error’]."<br>";
print_r($_FILES);
}
文件上传失败,错误信息:0
Array ( [upfile] => Array ( [name] => 106363.jpg [type] => image/jpeg [tmp_name] => C:\WINDOWS\temp\phpFC.tmp [error] => 0 [size] => 2450 ) )
hi8 14:54:34
$uploadfile = /listen/web/网站目录 这样可以吗?
这个是PHP ,move_uploaded_file上传函数, 如果上传失败,则输出错误信息。
if (!move_uploaded_file($_FILES[’upfile’][’tmp_name’],$uploadfile))
{
echo "文件上传失败,错误信息:".$_FILES[’upfile’][’error’]."<br>";
print_r($_FILES);
}
这个是页面输出结果
文件上传失败,错误信息:0
Array ( [upfile] => Array ( [name] => 106363.jpg [type] => image/jpeg [tmp_name] => C:\WINDOWS\temp\phpFC.tmp [error] => 0 [size] => 2450 ) )
文件上传失败,错误信息:0 错误信息是0的话, 应该是上传成功了才对的。 但是网站相关目录里找不到。
$uploadfile 是我上传的文件的路径。 “/lis....../we...../网站目录”
“当主机开通后会在自动生成3个文件夹:"web、db、log",请将您的文件上传到"web"目录下。。 ”
“传WEB” 啊??
测试结论:
$uploadfile用相对地址: $uploadfile="upimages/.$_FILES[’upfile’][’name’]"
测试正确的代码贴出如下,请参考:
function getname($exname){
$dir = "upimages/"; //2009.11.25
if(!is_dir($dir)){
mkdir($dir,0777);
}
$time=time();
$name=$time.".".$exname;
return $dir.$name;
}
$exname=strtolower(substr($_FILES[’upfile’][’name’],(strrpos($_FILES[’upfile’][’name’],’.’)+1)));
if ((($_FILES["upfile"]["type"] == "image/gif")
|| ($_FILES["upfile"]["type"] == "image/jpeg")
|| ($_FILES["upfile"]["type"] == "image/pjpeg"))
&& ($_FILES["upfile"]["size"] < 80000))
{
$uploadfile = getname($exname);
if (move_uploaded_file($_FILES[’upfile’][’tmp_name’],$uploadfile))
{
if(!trim($_FILES[’upfile’][’name’]=""))
{
$uploadfile="/shopsale/admin/".$uploadfile;
}
else
{
$uploadfile="";
}
mysql_query("insert into tb_,);
echo "<script>alert(’商品".$mingcheng."添加成功!’);window.location.href=’addproducts.php’;</script>";
}
else
{
echo "文件上传失败,错误信息:".$_FILES[’upfile’][’error’]."<br>";
print_r($_FILES);
}
}
else{
echo "无效的文件类型 Invalid file <br> 或文件大小超过80k";
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询