is this function correct or not !!, when i use this function , he very long work why ???
<?
$FTP_server="xxx.xxx.xxx.x";
$FTP_user="xxxxxx";
$FTP_password="xxxxxx";
function analysedir($dirline)
{
global $systyp, $ftp_server, $stop;
if(ereg("([-dl])[rwxst-]{9}",substr($dirline,0,10)))
{
$systyp = "UNIX";
}
if(substr($dirline,0,5) == "total")
{
$dirinfo[0] = -1;
}elseif($systyp=="Windows_NT")
{
if(ereg("[-0-9]+ *[0-9:]+[PA]?M? +<DIR> {10}(.*)",$dirline,$regs))
{
$dirinfo[0] = 1;
$dirinfo[1] = 0;
$dirinfo[2] = $regs[1];
}elseif(ereg("[-0-9]+ *[0-9:]+[PA]?M? +([0-9]+) (.*)",$dirline,$regs))
{
$dirinfo[0] = 0;
$dirinfo[1] = $regs[1];
$dirinfo[2] = $regs[2];
}
}
elseif($systyp=="UNIX")
{
if(ereg("([-d])[rwxst-]{9}.* ([0-9]*) [a-zA-Z]+ [0-9: ]*[0-9] (.+)",$dirline,$regs))
{
if($regs[1]=="d") $dirinfo[0] = 1;
$dirinfo[1] = $regs[2];
$dirinfo[2] = $regs[3];
}
}
if(($dirinfo[2]==".") || ($dirinfo=="..")) $dirinfo[0]=0;
return $dirinfo;
}
function rekdir($dir,$_ftp,$_ovner,$_ftplogin,$_ftppass)
{
set_time_limit(0);
global $connect_id, $filetyps, $exectyps, $ftp_server, $banlist, $size, $ssize;
$dirlist = ftp_rawlist($connect_id,"");
$check_a=count($dirlist);
if($check_a!=0)
{
for($i=0;$i<count($dirlist);$i++)
{
$dirinfo=analysedir($dirlist[$i]);
if($dirinfo[0]==1)
{
$newdir="$dir/$dirinfo[2]";
if(($dirinfo[2]=="~")||(substr($dirinfo[2],0,1)==" ")) $chdir=ftp_chdir($connect_id,$newdir);
else $chdir=ftp_chdir($connect_id, $dirinfo[2]);
$stop = 0;
if(!$stop && $chdir)
{
rekdir($newdir,$_ftp,$_ovner,$_ftplogin,$_ftppass);
}
if(!ftp_chdir($connect_id, $dir)) ftp_cdup($connect_id);
}
elseif($dirinfo[0]==0)
{
if(substr_count($dirinfo[2],".mp3")!=0)
{
$istok='';
$istok="ftp://$_ftplogin:$_ftppass@$_ftp$dir/";
echo "<br>$istok";
}
$size += $dirinfo[1];
}
}
}
}
$connect_id = ftp_connect($FTP_server);
$login_result = ftp_login($connect_id, $FTP_user, $FTP_password);
if($login_result)
{
$real_systyp = ftp_systype($connect_id);
$systyp = $real_systyp;
rekdir("",$checked1_data[mp3_ftp],$checked1_data[mp3_loging],$checked1_data[mp3_ftplogin],$checked1_data[mp3_ftppass]);
ftp_quit($connect_id);
}
?>