结合js做的,具体的话相应要做修改,比如目录制
[HTML]
<script language="JavaScript">
with (document) {
write("<STYLE TYPE='text/css'>");
write(".child ")
write("</STYLE>");
}
function initIt(){
divColl = document.all.tags("DIV");
for (i=0; i<divColl.length; i++) {
whichEl = divColl(i);
if (whichEl.className == "child") whichEl.style.display = "none";
}
}
function expandIt(el) {
whichEl = eval(el + "Child");
if (whichEl.style.display == "none") {
whichEl.style.display = "block";
}
else {
whichEl.style.display = "none";
}
}
onload = initIt;
</script>
<LINK href=../main.css rel=stylesheet type=text/css>
<?
function hsort($a)
{
$b='';
$c='';
for($i=0;$i<count($a);$i++)
{
$j=substr($a[$i],0,1);
if($j=='d')
if($i==0)
$b=$a[$i];
else
$b.='&&%%'.$a[$i];
else
if($i==0)
$c=$a[$i];
else
$c.='&&%%'.$a[$i];
}
if($b=='')
{
$ff=explode('&&%%',$c);
return $ff;
}
else
{
if($c=='')
{
$ff=explode('&&%%',$b);
return $ff;
}
else
{
$f1=$b.'&&%%'.$c;
$ff=explode('&&%%',$f1);
return $ff;
}
}
}
require("./class/ftp.php");
$HOST='localhost';
$USER='huyang';
$PASS='huyang';
function ftpurl($url,$konge,$in,$name)
{
if($konge>10)
{}
else
{
global $HOST,$USER,$PASS;
$ftp=new ftp;
$ftp->init($HOST,$USER,$PASS);
$ftp->initpwd($url);
$a=$ftp->mulu();
$ftp->close();
$a=hsort($a);
if($in!=1)
{
$sss=$name.'Child';
echo'<div id="'.$sss.'" class="child">';
}
$v=0;
for($i=1;$i<count($a);$i++)
{
$aa=explode(' ',$a[$i]);
$j=substr($aa[0],0,1);
if($j=='t')
{}
elseif($j=='d')
{
$c=count($aa);
$c-=1;
if(($aa[$c]=='.')||($aa[$c]=='..'))
{}
else
{
$v++;
if($in==1)
{
$name1='URL'.$v.'Parent';
$names='URL'.$v;
echo'<div id="'.$name1.'" class="parent">';
echo'<a href="#" onClick="expandIt(';
echo"'".$names."'";
echo'); return false" ><img src="img/plus.gif" border=0>'.$aa[$c].'</a></div>
';
}
else
{
$names=$name.'_'.$v;
echo'<a href="#" onClick="expandIt(';
echo"'".$names."'";
echo'); return false" >';
for($hu=0;$hu<$konge;$hu++)
echo'<img src="img/spacer.gif" border=0 alt="">';
echo'<img src="img/plus.gif" border=0>'.$aa[$c].'</a><br>
';
}
$url1=$url.'/'.$aa[$c];//may be need to change
$konge1=$konge+1;
ftpurl($url1,$konge1,0,$names);
}
}
else
{
$c=count($aa);
$c-=1;
if($in==1)
{
$name='URL'.$i.'Parent';
$name1='URL'.$i;
echo'<div id="'.$name.'" class="parent">';
echo'<a href="#"><img src="img/open.gif" border=0>'.$aa[$c].'</a></div>
';
}
else
{
echo'<a href="#">';
for($hu=0;$hu<$konge;$hu++)
echo'<img src="img/spacer.gif" border=0 alt="">';
echo'<img src="img/open.gif" border=0>'.$aa[$c].'</a><br>
';
}
}
}
if($in!=1)
echo'</div>';
}
}
$ftp=new ftp;
$ftp->init($HOST,$USER,$PASS);
$s=$ftp->pwd();
$ftp->close();
ftpurl($s,0,1,'URL1'); //$s may be need to change
?>
[/HTML]
以下为类文件
[HTML]
<?
class ftp
{
var $id,$tid,$HOST,$USER,$PASS,$pwd;
var $china_mulu;
function init($HOST,$USER,$PASS)
{
$this->HOST=$HOST;
$this->USER=$USER;
$this->PASS=$PASS;
$this->setup();
}
function setup()
{
if($this->HOST=='')$this->HOST='localhost';
if($this->USER=='')$this->USER='';
if($this->PASS=='')$this->PASS='';
$this->id=ftp_connect($this->HOST) or $this->ftp_msg("can not connect ftp");
$this->tid=ftp_login($this->id,$this->USER,$this->PASS) or $this->ftp_msg("can not open it");
}
function pwd()//取得路径
{
$this->pwd=ftp_pwd($this->id);
return $this->pwd;
}
function initpwd($pwd)
{
$this->pwd=$pwd;
}
function mulu()//取得目录
{
if(!$this->pwd)
$this->pwd=ftp_pwd($this->id);
$this->chinamulu=ftp_rawlist($this->id,$this->pwd);
return $this->chinamulu;
}
function upmulu()//返回上级目录
{
$a=ftp_cdup($this->id) or $this->ftp_msg("already be the uppest!!");
}
function close()
{
ftp_quit($this->id);
}
function ftp_msg($err)
{
print"<font color=red><h1><center>$err</center></h1></font>";
}
}
?>
[/HTML]