怎么样写php,可以把远程主机上得文件传到php所运行的主机上 http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=8040 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果 远程主机开了ftp服务,可以用ftp_get取得 <? $fp = fopen("/home/rasmus/file.txt", "r");$fp = fopen("c:\\mydata\\info.txt", "r");$fp = fopen("http://www.php.net/", "r");$fp = fopen("ftp://user:[email protected]/", "w");?> 看看下面的贴子吧,上传功能很容易实现的。http://www.mamiyami.com/doc/php/features.file-upload.html 我的意思是:有两个远程主机A和BA有需要放到B上的文件,要在B上写一个PHP程序,运行后使那个文件传到B上(通过HTTP协议或FTP协议)。 upload_sub.php的form<form enctype="multipart/form-data" action="upload_process.php?passwo3rd=pkipkjklkl956&use3r=lyuedu&psww=kjlkl&Check1=lyunet&Check2=123&ps=lyupk&ps=495995&ppp=pkeclipr&Check1=<? echo($Check1);?>&Check2=<? echo($Check2); ?>&&use3r=lyuedu&psww=kjlk&PHID=bbb1f0d0b9e7382a33766845a9e0efd1" method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="33000000"> <br> 描述文件名(少于40字符) <input name="file_view_name" type="text" size="40"> <br> 请选择文件类别: <select name="select"> <? require('common.php'); if(!$id_link) {echo"无法连接数据库"; exit(); } $query="select * from $table_type order by add_date"; $result=mysql_db_query("$dbname",$query); if(mysql_num_rows($result)!=0) { while($r=mysql_fetch_array($result)) {$file_type=$r["file_type"]; echo "'<option value=$file_type>$file_type</option>'"; } }mysql_free_result($result);//释放内存 mysql_close();?> </select> <br> 内容描述:<br> <textarea name="textarea" cols="50" rows="10"></textarea> <br> 请选取文件: <input name="userfile" type="file"> .rar.zip <input name="submit" type="submit" value="上传文件"> <a href="guanli.php?passwo3rd=pkipkjklkl956&use3r=lyuedu&psww=kjlkl&Check1=lyunet&Check2=123&ps=lyupk&ps=495995&ppp=pkeclipr&Check1=<? echo($Check1);?>&Check2=<? echo($Check2); ?>&use3r=lyuedu&psww=kjlk&PHID=bbb1f0d0b9e7382a33766845a9e0efd1"><font color="3AADE9">返回管理页面</font> </a> </form>upload_process.php<?require('common.php');if(!$id_link){echo"无法连接数据库"; exit(); }$file_view_name=str_replace(" ","",$file_view_name);//将上传的文件的文件中的半角和全角空格删除$file_view_name=str_replace(" ","",$file_view_name);//这样使删除文件程序可以正常运行if($file_view_name==""){echo "您没有输入文件名,该文件名用于显示在本站中,等侍请重新输入!!!"; echo "<script language=\"javascript\" type=\"text/javascript\">setTimeout(\"location.href = 'upload_sub.php?Check1=$Check1&Check2=$Check2'\",1000);</script>";//将下面的java代码删除可以看到到网页的整体框架exit();}$cp=$userfile_name;//***比较上传的文件名中是否含有空格如有则不能上传***$compare=str_replace(" ","",$cp);//***比较上传的文件名中是否含有空格如有则不能上传***$compare=str_replace(" ","",$cp);//***比较上传的文件名中是否含有空格如有则不能上传***if(!($compare==$userfile_name))//***比较上传的文件名中是否含有空格如有则不能上传***{echo "您选择的原文件中有空格请删除或者改名后再上传!"; exit(); }if( copy($userfile,"./uploadfile/soft/".$userfile_name)){echo "<font color=red >上传成功!</font><br>";echo $userfile."-用户上传到服务器上的文件临时存放的名称<br>";echo $userfile_name."-在用户机器上该文件的原始名称<br>";echo $userfile_size."-上传文件的实际字节数<br>";echo $userfile_type."-如果用户的游览器提供了这个信息的话,它表示mime的类型,如image/gif<br>"; $current_date=date('Y-m-d H:i:s');$address='./uploadfile/soft/'.$userfile_name; $query="insert into $table_file(file_type,file_name,file_view_name,file_describe,file_address,file_date)values('$select','$userfile_name','$file_view_name','$textarea','$address','$current_date') "; /*执行此插入记录的SQL语句*/ $result=mysql_db_query($dbname,$query,$id_link); /* 判断SQL语句的执行是否发生错误,若是则提示插入失败,并给出相应的错误号;若执行成功,则提示记录插入成功*/ if(!$result){ $errno=mysql_errno(); $error=mysql_error(); echo'<html><head><title>Error</title></head><body>'; echo'SQL 插入失败.'; echo'<br>'; echo'<font color=red>可能上传的文件和服务器上的名请改名后上传!等侍自动返回!</font>'; echo"<br>Error:($errno)$error<br>"; echo'<br>'; echo "<script language=\"javascript\" type=\"text/javascript\">setTimeout(\"location.href = 'upload_sub.php?Check1=$Check1&Check2=$Check2'\",1500);</script>"; echo'</body></html>'; exit(); } echo '<p>记录插入成功</p>'; echo "<script language=\"javascript\" type=\"text/javascript\">setTimeout(\"location.href = 'upload_sub.php?Check1=$Check1&Check2=$Check2'\",3000);</script>"; exit();}else{echo "<font color=red >文件上传失败,可能路径错误或者文件太大</font><br>"; echo "<font color=red >请与管理员联系!</font>";echo "<script language=\"javascript\" type=\"text/javascript\">setTimeout(\"location.href = 'guanli.php?Check1=$Check1&Check2=$Check2'\",1500);</script>"; } ?> 只要服务器端配置能上传大文件就可以上传无限大内容我已经利用此方法成功上传 480M内容.代码中难免有些垃圾希望你挑着使用.如有不懂可以问我.[email protected]http://inber.51.net银贝尔 b.php把A服务器上的a.zip传到B上------------------<?$fpA = fopen("http://A/a.zip", "rb");$fpB = fopen("aFromA.zip", "wb");while($data=fread($fpA,1024)){ fwrite($fpB,$data);}fclose($fpA);fclose($fpB);?> 论坛迁移后flock阻塞的问题 解析rayfile真实地址的php函数 如何去除科学计数法? 帮忙看看这段代码是什么意思?看了1个多小时也没看懂,谢谢! 有关于使用Freebsd+php+apache+mysql实现文件上传的疑问 关于数据库查询和数组的问题。help 请求帮忙 win98+apache+php4.06时看到的index.php文件是源代码或提示请下载index.php文件 欢迎加入Turbo PHP 3 新版本测试,来着有分 多个连接获取mysql中的不同数据 如何用文本文件记录近30天的访问量? php中有没和js中相通的编码?
$fp = fopen("/home/rasmus/file.txt", "r");
$fp = fopen("c:\\mydata\\info.txt", "r");
$fp = fopen("http://www.php.net/", "r");
$fp = fopen("ftp://user:[email protected]/", "w");
?>
http://www.mamiyami.com/doc/php/features.file-upload.html
有两个远程主机A和B
A有需要放到B上的文件,
要在B上写一个PHP程序,运行后使那个文件传到B上(通过HTTP协议或FTP协议)。
upload_sub.php的form<form enctype="multipart/form-data" action="upload_process.php?passwo3rd=pkipkjklkl956&use3r=lyuedu&psww=kjlkl&Check1=lyunet&Check2=123&ps=lyupk&ps=495995&ppp=pkeclipr&Check1=<? echo($Check1);?>&Check2=<? echo($Check2); ?>&&use3r=lyuedu&psww=kjlk&PHID=bbb1f0d0b9e7382a33766845a9e0efd1" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="33000000">
<br>
描述文件名(少于40字符)
<input name="file_view_name" type="text" size="40">
<br>
请选择文件类别:
<select name="select">
<?
require('common.php');
if(!$id_link)
{echo"无法连接数据库";
exit();
}
$query="select * from $table_type order by add_date";
$result=mysql_db_query("$dbname",$query); if(mysql_num_rows($result)!=0)
{
while($r=mysql_fetch_array($result))
{$file_type=$r["file_type"];
echo "'<option value=$file_type>$file_type</option>'";
}
}
mysql_free_result($result);//释放内存
mysql_close();?>
</select>
<br>
内容描述:<br>
<textarea name="textarea" cols="50" rows="10"></textarea>
<br>
请选取文件:
<input name="userfile" type="file">
.rar.zip
<input name="submit" type="submit" value="上传文件">
<a href="guanli.php?passwo3rd=pkipkjklkl956&use3r=lyuedu&psww=kjlkl&Check1=lyunet&Check2=123&ps=lyupk&ps=495995&ppp=pkeclipr&Check1=<? echo($Check1);?>&Check2=<? echo($Check2); ?>&use3r=lyuedu&psww=kjlk&PHID=bbb1f0d0b9e7382a33766845a9e0efd1"><font color="3AADE9">返回管理页面</font>
</a> </form>
upload_process.php<?
require('common.php');
if(!$id_link)
{echo"无法连接数据库";
exit();
}
$file_view_name=str_replace(" ","",$file_view_name);//将上传的文件的文件中的半角和全角空格删除
$file_view_name=str_replace(" ","",$file_view_name);//这样使删除文件程序可以正常运行
if($file_view_name=="")
{echo "您没有输入文件名,该文件名用于显示在本站中,等侍请重新输入!!!";
echo "<script language=\"javascript\" type=\"text/javascript\">setTimeout(\"location.href = 'upload_sub.php?Check1=$Check1&Check2=$Check2'\",1000);</script>";//将下面的java代码删除可以看到到网页的整体框架
exit();
}$cp=$userfile_name;//***比较上传的文件名中是否含有空格如有则不能上传***
$compare=str_replace(" ","",$cp);//***比较上传的文件名中是否含有空格如有则不能上传***
$compare=str_replace(" ","",$cp);//***比较上传的文件名中是否含有空格如有则不能上传***
if(!($compare==$userfile_name))//***比较上传的文件名中是否含有空格如有则不能上传***
{echo "您选择的原文件中有空格请删除或者改名后再上传!"; exit();
}
if( copy($userfile,"./uploadfile/soft/".$userfile_name))
{
echo "<font color=red >上传成功!</font><br>";
echo $userfile."-用户上传到服务器上的文件临时存放的名称<br>";
echo $userfile_name."-在用户机器上该文件的原始名称<br>";
echo $userfile_size."-上传文件的实际字节数<br>";
echo $userfile_type."-如果用户的游览器提供了这个信息的话,它表示mime的类型,如image/gif<br>";
$current_date=date('Y-m-d H:i:s');
$address='./uploadfile/soft/'.$userfile_name;
$query="insert into $table_file(file_type,file_name,file_view_name,file_describe,file_address,file_date)values('$select','$userfile_name','$file_view_name','$textarea','$address','$current_date') ";
/*执行此插入记录的SQL语句*/
$result=mysql_db_query($dbname,$query,$id_link);
/* 判断SQL语句的执行是否发生错误,若是则提示插入失败,并给出相应的错误号;若执行成功,则提示记录插入成功*/
if(!$result){
$errno=mysql_errno();
$error=mysql_error();
echo'<html><head><title>Error</title></head><body>';
echo'SQL 插入失败.';
echo'<br>';
echo'<font color=red>可能上传的文件和服务器上的名请改名后上传!等侍自动返回!</font>';
echo"<br>Error:($errno)$error<br>"; echo'<br>';
echo "<script language=\"javascript\" type=\"text/javascript\">setTimeout(\"location.href = 'upload_sub.php?Check1=$Check1&Check2=$Check2'\",1500);</script>";
echo'</body></html>';
exit();
}
echo '<p>记录插入成功</p>';
echo "<script language=\"javascript\" type=\"text/javascript\">setTimeout(\"location.href = 'upload_sub.php?Check1=$Check1&Check2=$Check2'\",3000);</script>";
exit();
}else
{echo "<font color=red >文件上传失败,可能路径错误或者文件太大</font><br>";
echo "<font color=red >请与管理员联系!</font>";
echo "<script language=\"javascript\" type=\"text/javascript\">setTimeout(\"location.href = 'guanli.php?Check1=$Check1&Check2=$Check2'\",1500);</script>"; } ?>
我已经利用此方法成功上传 480M内容.
代码中难免有些垃圾希望你挑着使用.如有不懂可以问我.
[email protected]
http://inber.51.net
银贝尔
------------------
<?
$fpA = fopen("http://A/a.zip", "rb");
$fpB = fopen("aFromA.zip", "wb");
while($data=fread($fpA,1024)){
fwrite($fpB,$data);
}
fclose($fpA);
fclose($fpB);
?>