php与ftp数据库连接代码

使用php与ftp数据库连接代码

function dftp_connect($ftphost, $ftpuser, $ftppass, $ftppath, $ftpport = 21, $ftpssl = 0, $silent = 0) {
 global $ftp;
 @set_time_limit(0);

$ftphost = wipespecial($ftphost);
 $ftpport = intval($ftpport);
 $ftpssl = intval($ftpssl);
 $ftp['timeout'] = intval($ftp['timeout']);

$func = $ftpssl && function_exists('ftp_ssl_connect') ? 'ftp_ssl_connect' : 'ftp_connect';
 if($func == 'ftp_connect' && !function_exists('ftp_connect')) {
  if($silent) {
   return -4;
  } else {
   errorlog('FTP', "FTP not supported.", 0);
  }
 }
 if($ftp_conn_id = @$func($ftphost, $ftpport, 20)) {
  if($ftp['timeout'] && function_exists('ftp_set_option')) {
   @ftp_set_option($ftp_conn_id, FTP_TIMEOUT_SEC, $ftp['timeout']);
  }
  if(dftp_login($ftp_conn_id, $ftpuser, $ftppass)) {
   if($ftp['pasv']) {
    dftp_pasv($ftp_conn_id, TRUE);
   }
   if(dftp_chdir($ftp_conn_id, $ftppath)) {
    return $ftp_conn_id;
   } else {
    if($silent) {
     return -3;
    } else {
     errorlog('FTP', "Chdir '$ftppath' error.", 0);
    }
   }
  } else {
   if($silent) {
    return -2;
   } else {
    errorlog('FTP', '530 Not logged in.', 0);
   }
  }
 } else {
  if($silent) {
   return -1;
  } else {
   errorlog('FTP', "Couldn't connect to $ftphost:$ftpport.", 0);
  }
 }
 dftp_close($ftp_conn_id);
 return -1;
}

function dftp_mkdir($ftp_stream, $directory) {
 $directory = wipespecial($directory);
 return @ftp_mkdir($ftp_stream, $directory);
}

function dftp_rmdir($ftp_stream, $directory) {
 $directory = wipespecial($directory);
 return @ftp_rmdir($ftp_stream, $directory);
}

function dftp_put($ftp_stream, $remote_file, $local_file, $mode, $startpos = 0 ) {
 $remote_file = wipespecial($remote_file);
 $local_file = wipespecial($local_file);
 $mode = intval($mode);
 $startpos = intval($startpos);
 return @ftp_put($ftp_stream, $remote_file, $local_file, $mode, $startpos);
}

function dftp_size($ftp_stream, $remote_file) {
 $remote_file = wipespecial($remote_file);
 return @ftp_size($ftp_stream, $remote_file);
}

function dftp_close($ftp_stream) {
 return @ftp_close($ftp_stream);
}

function dftp_delete($ftp_stream, $path) {
 $path = wipespecial($path);
 return @ftp_delete($ftp_stream, $path);
}

function dftp_get($ftp_stream, $local_file, $remote_file, $mode, $resumepos = 0) {
 $remote_file = wipespecial($remote_file);
 $local_file = wipespecial($local_file);
 $mode = intval($mode);
 $resumepos = intval($resumepos);
 return @ftp_get($ftp_stream, $local_file, $remote_file, $mode, $resumepos);
}

function dftp_login($ftp_stream, $username, $password) {
 $username = wipespecial($username);
 $password = str_replace(array("n", "r"), array('', ''), $password);
 return @ftp_login($ftp_stream, $username, $password);
}

function dftp_pasv($ftp_stream, $pasv) {
 $pasv = intval($pasv);
 return @ftp_pasv($ftp_stream, $pasv);
}

function dftp_chdir($ftp_stream, $directory) {
 $directory = wipespecial($directory);
 return @ftp_chdir($ftp_stream, $directory);
}

function dftp_site($ftp_stream, $cmd) {
 $cmd = wipespecial($cmd);
 return @ftp_site($ftp_stream, $cmd);
}

function dftp_chmod($ftp_stream, $mode, $filename) {
 $mode = intval($mode);
 $filename = wipespecial($filename);
 if(function_exists('ftp_chmod')) {
  return @ftp_chmod($ftp_stream, $mode, $filename);
 } else {
  return dftp_site($ftp_stream, 'CHMOD '.$mode.' '.$filename);
 }
}

时间: 2024-10-24 18:31:43

php与ftp数据库连接代码的相关文章

使用php与ftp数据库连接代码

function dftp_connect($ftphost, $ftpuser, $ftppass, $ftppath, $ftpport = 21, $ftpssl = 0, $silent = 0) {  global $ftp;  @set_time_limit(0);  $ftphost = wipespecial($ftphost);  $ftpport = intval($ftpport);  $ftpssl = intval($ftpssl);  $ftp['timeout']

ASP中各种数据库连接代码

数据|数据库|数据库连接 各种数据库连接代码 今天呆着没事干,把各种数据库的连接总结了一下,现拿出来与大家分享: MS Access数据库连接 用DSN连接并且没有用户名和密码: <%set conn = Server.CreateObject("ADODB.Connection")conn.open "YourDSNName"%> 用DSN连接并且有用户名和密码: <%set conn = Server.CreateObject("AD

代码分析-ASP.NET技术中数据库连接代码解释

问题描述 ASP.NET技术中数据库连接代码解释 你好,我的数据库里面有一个Thing表,下面是一段与数据库连接的代码,帮忙解释一下,谢谢 DataList1.DataSource = ThingManager.Get(0 5 0 string.Empty); DataList1.DataBind(); 解决方案 DataList1控件的数据源指定为 ThingManager.Get(0 5 0 string.Empty)获得的DataSet或数据:DataList1.DataBind()就是D

java-简陋的ftp下载代码,小弟求助!

问题描述 简陋的ftp下载代码,小弟求助! 服务器代码: package day21.xl; import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileFilter; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream;

asp数据库连接代码

'本文章提供一款比较完美的asp数据库连接代码哦,他不但连接access数据库同时也包括了数据库断开连接代码函数. dim conn,rs,sql,dbpath set conn=server.createobject("adodb.connection") dbpath="web_data.asp"  '数据库路径 call conndate() sub conndate()  if err then err.clear  on error resume next

asp access数据库连接代码

        access数据库教程连接代码         dim conn,connstr,timesdb,rs         timesdb="../www.111cn.net/#tsm_admin_data.asp"         connstr="provider=microsoft.jet.oledb.4.0;data source=" & server.mappath(""&timesdb&"

Thinkphp分布式数据库连接代码详解介绍

Thinkphp作为国内的一款流行框架,相信使用的人一定不在少数.本篇我们来分析一下Thinkphp中比较重要的一部分--分布式数据库的连接. 当然了,我们在这里不是去将如何使用模型去对数据库进行增删改查.我们是对其底层的连接代码做一个分析,可以帮助大家更好的理解thinkphp对数据库的操作.方便我们以后的使用. 一.单一数据库的连接 在使用的时候,单一数据库的连接配置非常简单.我们只需要在配置文件中配置一下的信息即可. 'DB_TYPE' => 'mysql', 'DB_HOST' =>

FTP程序代码K9审查的问题

问题描述 我的一个程序中使用了FTP,但是现在进行软件评测过不去,K9进行代码代码扫查的FtpWebRequestreqFTP;reqFTP=(FtpWebRequest)FtpWebRequest.Create(newUri("ftp://"+ftpserveruri+_ufi.filepath+_ufi.filename));我看网上的代码这样写的就用了,但是K9认为这样是错误的,不能强制从WebRequest转换为FtpWebRequest,不知道有什么办法没有Aninvalid

使用git代替FTP部署代码到服务器的例子_相关技巧

本地开发完成后,通常会在服务器上部署,有人会使用ftp,有人会使用scp, ftp和scp的时候为了方便我们通过还要tar或者zip一下, 这些做法也很不错,但是它有一些问题 1.全部更新,不管某些文件是否修改,都要重新传一下服务器,浪费时间与流量 2.多台服务器的重复上传 3.代码更新后,后续的一些操作不够自动化 上面的问题可以通过ssh直接远程执行命令来解决,但是需要写一些shell脚本, 有没有更简单更高效的方法呢?有,那就是使用版本版本管理工具的hook! 这里我说是版本管理工具而不是g