怎样实现文件上传?

yuefeng521521521 2003-10-18 10:28:42
我用的copy函数它总说第一个参数不是一个文件名。
如:E:\\picture\\照片\\1.jpg
但确实是一个文件啊!
在本机上调试还好使的,程序传到服务器上就不好使了,怎么回事?

谢谢
...全文
32 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
cmen 2003-10-19
  • 打赏
  • 举报
回复
$tempfile = $_FILES['filename']['tmp_name'];
$temppath = str_replace("\\","/", $tempfile);

if(!move_uploaded_file($temppath,$destfile))
{
echo ("error");
return;
}

要注意windows系统与unix系统的区别,即'\\'转换为'/'。
虎翼网上调试成功
cmen 2003-10-19
  • 打赏
  • 举报
回复
$tempfile = $_FILES['filename']['tmp_name'];
$temppath = str_replace("\\","/", $fileName);

if(!move_uploaded_file($temppath,$destfile))
{
echo ("error");
return;
}
feel8 2003-10-18
  • 打赏
  • 举报
回复
更改一下。

<input name="ima" type="file" id="ima">

copy($_FILES['ima']['tmp_name'], "./$_FILES['ima']['name']");
feel8 2003-10-18
  • 打赏
  • 举报
回复
<input name="ima" type="file" id="ima">

copy($_FILES['ima']['tmp_name'], "./$_FILES['userfile']['name']");
chairj 2003-10-18
  • 打赏
  • 举报
回复
$pic="../images/".$ima_name; // "../images/"为存放图片的路径
copy($ima,$pic);


$ima为表单中
<input name="ima" type="file" id="ima">的name

这样写得先确保你的register_globals = On
feel8 2003-10-18
  • 打赏
  • 举报
回复
copy 函数是从系统的临时目录里copy的,直接从e盘copy传到服务器上当然不好使,因为服务上没有这个e盘的路径。

userfile是表单中文件的名字。

$_FILES['userfile']['name']
客户端机器文件的原名称。

$_FILES['userfile']['type']
文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。

$_FILES['userfile']['size']
已上传文件的大小,单位为字节。

$_FILES['userfile']['tmp_name']
文件被上传后在服务端储存的临时文件名。

$_FILES['userfile']['error']

可以用$uploadfile_name\$uploadfile_type等等来解决,upload代表上传文件,例如问题中的:pic

21,881

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧