请哪位高手详细说一下文件上传的问题
在搜索中看了半天,也没明白。自己编写了一个程序:
<html>
<head>
<title>处理上载文件</title>
</head>
<body>
<?php
$username="user";
$pw="user";
$server="10.22.4.241";
$cdir="image/";
if(isset($_POST["ok"]))
{
$conn = ftp_connect($server);
if($conn)
{
if(ftp_login($conn, $username, $pw))
{
if(ftp_chdir($conn, $cdir))
{
$filename=basename(str_replace("\\","/",$_POST["pic"]));
$res_code=ftp_put($conn,$filename,$_POST["pic"],FTP_BINARY);
if($res_code)
{
echo "上传成功!";
}
else
{
echo "上传错误!";
}
ftp_close($conn);
}
else
{
echo "chdir error";
}
}
else
{
echo "login error";
}
}
else
{
echo "connect error";
}
}
else
{
echo "???";
}
?>
<form action="temp.php" method="post">
<input name="pic" type="file">
<input type="submit" value="上传文件" name=ok>
</form>
</body>
</html>
-------------------------------------------------------------------
执行后出现如下错误:
Warning: error opening d:\\image\\010.jpg in /var/www/html/1234/temp.php on line 26
//注:错误出在:$res_code=ftp_put($conn,$filename,$_POST["pic"],FTP_BINARY);这句上??
上传错误!
Fatal error: Call to undefined function: ftp_close() in /var/www/html/1234/temp.php on line 35
Why?
我把form改写成:
<form enctype="multipart/form-data" action="temp.php" method="post">
则根本不提交,点了提交后一闪又回到初始态,程序认为$_POST["ok"]不存在????
把if(isset(...))删除了,又出现如上错误??
Why??
如果想用HTTP方式上传的话,具体怎么做?
我编写了一个,但同样是告诉我 d:\\image\\010.jpg 打开时错误???
我看了其它人的文章,好像只是说把临时目录中的copy到目标中,那么“临时目录”是不是也在服务器上?
我如果想把本地的(本地机为d:\image\010.jpg)放到指定的目录中去(服务器/image下),如何具体做,试着抄写了其它人的一大堆例程,但没有一个成功??
再问一下:HTTP方式与FTP方式哪种更好一些,比如安全性等方面。
非常感谢!非常感谢!非常感谢!非常感谢!非常感谢! :)