| ×÷Õß: hlmhlm ·¢²¼ÈÕÆÚ:
2006-9-25 |
µÚÒ»²½£ºconn.php
<? include("ldap.cs.php"); //ÀàÎļþ ?>
<?
$conn=new ldap("192.168.1.214","cn=root,dc=test,dc=com","secret");²ÎÊý·Ö±ðΪ£º·þÎñÆ÷£É£Ð£¬×éÖ¯½á¹¹£Ä£Î£¬Êý¾Ý¿âÃÜÂ룬¶Ë¿Ú[Ò»°ãĬÈϳö]
Ò»¸ö¼òµ¥µÄʾÀý
$select=new selectRs($conn);
$arr=$select->getArray("o=mail,dc=test,dc=com","cn=*");
echo "¹²´«»Ø×ÊÁÏ".$arr["count"]."Ìõ ";
//for($j=0;$j<=$arr["count"];$j++){
//echo $a[$j]=$arr[$j]["mail"][0]." ";
//}
$column[0]="mail";
$column[1]="cn";
$column[2]="dn";
$column[3]="userpassword";
//echo "µ±Ç°µÄCNΪ".$arr[1]["dn"];
$a=$select->arrsort($arr,$column);
for($i=0;$i<=count($a);$i++){
echo $a[$i][0]." ";
echo $a[$i][1]." ";
echo $a[$i][2]." ";
echo $a[$i][3]." ";
}
echo $select->getRowNum()." ";
?>
¡¡ |
| ×÷Õß: hlmhlm ·¢²¼ÈÕÆÚ:
2006-9-25 |
ÐèÓÃ˵Ã÷һϣ¬ÏÂÃæÕâ¶Î´úÂëÊǶԴ洢ÓʼþÕËºÅµÄ¿â½øÐеÄÔöɾ¸Ä²é·ÖÒ³µÄ²Ù×÷£¬Ã»ÓÃʹÓ÷ÖÒ³µÄ·½·¨£¬$this->pagepage($page¡¡//³õÊ·Ò³,$arr //²éѯºóµÄ½á¹ûÊý×é,$column //ÐèÒª·µ»ØµÄÊôÐÔ£¬²ÎÊýÀàÐÍΪÊý×é,$num=5¡¡//ÿҳµÄ¼Ç¼Êý);ÕâÀï¾Í²»ÐèÒªÎÒ½éÉÜÁ˰É
include "include/login_inc.php";
include "config/config_inc.php";
include "include/fun_inc.php";
include "language/$CFG_LANGUAGE"."_inc.php";
// get
//$get_page = $_GET['page'];
$get_keyword = $_POST['keyword'];
$Cmd=$_REQUEST["Cmd"];
$mail=$_REQUEST["email"];
$active=chop($_REQUEST["active"]);
$mailuser=chop($_REQUEST["mailuser"]);
$username=$_REQUEST["mail"];
$cn=$_REQUEST["cn"];
$passwd=trim($_REQUEST["passwd"]);
$mquota=$_REQUEST["mquota"];
$fquota=$_REQUEST["fquota"];
if($mquota=="") $mquota=0;
if($fquota=="") $fquota=0;
$quota=($mquota*1024*1024)."S,".$mquota."C";
$description=$_REQUEST["description"];
$accountstatus=$_REQUEST["accountstatus"];
switch($Cmd){
case "del":
$ldaprdn="cn=".$CFG_LDAP_USER.",dc=test,dc=com";
$ldappass=$CFG_LDAP_PASS;
include("conn.php");
$select=new selectRs($conn);
$domain=str_replace('@',"",strrchr($mail,"@"));
$username=str_replace(strrchr($mail,"@"),"",$mail);
exec("/usr/bin/sudo /etc/scripts/sysctrl del mailuser $domain $username",$res,$rc);
if($rc!=0) {
echo "<script>alert('·þÎñ²Ù×÷ʧ°Ü£¡ÇëÖØÊÔÒ»´Î£¡);location.href='mailuserset.php';</script>";
exit;
}
$select->delete("mail=$mail,domain=$domain,o=mail,dc=test,dc=com");
echo "<script>alert('ɾ³ý³É¹¦£¡');location.href='mailuserset.php?page=$page';</script>";
//header("location: mailuserset.php?page=$page");
break;
case "active":
$ldaprdn="cn=".$CFG_LDAP_USER.",dc=test,dc=com";
$ldappass=$CFG_LDAP_PASS;
include("conn.php");
$select=new selectRs($conn);
$domain=str_replace('@',"",strrchr($mail,"@"));
$column["accountstatus"]="active";
$select->update("mail=$mail,domain=$domain,o=mail,dc=test,dc=com",$column);
header("location: mailuserset.php?page=$page");
break;
case "deactive":
$ldaprdn="cn=".$CFG_LDAP_USER.",dc=test,dc=com";
$ldappass=$CFG_LDAP_PASS;
include("conn.php");
$select=new selectRs($conn);
$domain=str_replace('@',"",strrchr($mail,"@"));
$column["accountstatus"]="no";
$select->update("mail=$mail,domain=$domain,o=mail,dc=test,dc=com",$column);
header("location: mailuserset.php?page=$page");
break;
case "edit":
$ldaprdn="cn=".$CFG_LDAP_USER.",dc=test,dc=com";
$ldappass=$CFG_LDAP_PASS;
include("conn.php");
$select=new selectRs($conn);
//$domain=str_replace('@',"",strrchr($mail,"@"));
$column["mail"]=$username."@".$SG_DOMAIN;
$column["cn"]=$cn;
if($passwd!=""){
$column["userpassword"]='{MD5}'.base64_encode(pack( 'H*',md5("$passwd")));
}
$column["quota"]=$quota;
$column["description"]=$description;
$column["accountstatus"]=$accountstatus;
$select->update("mail=".$username."@".$SG_DOMAIN.",domain=$SG_DOMAIN,o=mail,dc=test,dc=com",$column);
echo "<script>alert('Ð޸ijɹ¦£¡');location.href='mailuserset.php?page=$page';</script>";
//header("location: mailuserset.php?page=$page");
break;
case "insert":
$ldaprdn="cn=".$CFG_LDAP_USER.",dc=test,dc=com";
$ldappass=$CFG_LDAP_PASS;
include("conn.php");
$sel=new selectRs($conn);
$arrs=$sel->getArray("domain=$domain,o=mail,dc=test,dc=com","mail=".$username."@".$SG_DOMAIN."");
if($sel->getRowNum()>0){
echo "<script>alert('¶Ô²»Æð£¡Õâ¸öÕ˺ÅÒÑÓÐÈËʹÓã¬ÇëÖØÐÂÌîдһ¸ö');history.back(-1);</script>";
exit;
}
$select=new selectRs($conn);
$column["mail"]=$username."@".$SG_DOMAIN;
if($cn=="") $cn=$username;
if($description=="") $description="_";
$column["cn"]=$cn;
$column["userPassword"]='{MD5}'.base64_encode(pack( 'H*',md5("$passwd")));
$column["quota"]=$quota;
$column["homeDirectory"]="/var/mail/";
$column["objectClass"]="CourierMailAccount";
$column["mailbox"]="$SG_DOMAIN/$username/Maildir/";
$column["description"]=$description;
$column["accountStatus"]=$accountstatus;
exec("/usr/bin/sudo /etc/scripts/sysctrl addmailuser $SG_DOMAIN $username $quota",$res,$rc);
if($rc!=0) {
echo "<script>alert('·þÎñ²Ù×÷ʧ°Ü£¡ÇëÖØÊÔÒ»´Î£¡);location.href='mailuserset.php';</script>";
exit;
}
$select->insert("mail=".$username."@".$SG_DOMAIN.",domain=$SG_DOMAIN,o=mail,dc=test,dc=com",$column);
echo "<script>alert('²Ù×÷³É¹¦£¡');location.href='mailuserset.php';</script>";
break;
}
$ldaprdn="cn=".$CFG_LDAP_USER.",dc=test,dc=com";
$ldappass=$CFG_LDAP_PASS;
include("conn.php");
$select=new selectRs($conn);
if($mailuser!=""){ $if="mail=*".$mailuser."*@".$SG_DOMAIN; } else { $if="mail=*@".$SG_DOMAIN;}
if($active=="no"){
$if="accountStatus=no";
//$arr=$select->getArray("domain=$SG_DOMAIN,o=mail,dc=test,dc=com","accountStatus=no");
}
$arr=$select->getArray("domain=$SG_DOMAIN,o=mail,dc=test,dc=com",$if);
//}
$column[0]="mail";
$column[1]="cn";
$column[2]="quota";
$column[3]="accountstatus";
$column[4]="description";
$page=$_REQUEST["page"];
if($page<1) $page=1;
$num=8;
$rownum=$select->getRowNum();
$pagecount=ceil($rownum/$num);
if($page>$pagecount) $page=$pagecount;
$a=$select->arrsort($arr,$column);
$start=($page-1)*$num+1;
$end=$page*$num;
// ´¦ÀíÅÅÐò¹Ø¼ü×Ö
if($rownum>0){
for($i=$start;$i<=$end;$i++){
if($i>$rownum){
continue;
}
$username=$a[$i][0];
$realname=$a[$i][1];
$quota=$a[$i][2];
$accountstatus=$a[$i][3];
$description=$a[$i][4];
$aa=explode(',',$quota);
$mquota=str_replace('S','',$aa[0]);
$mquota=ceil($mquota/1024/1024);
$fquota=str_replace('C','',$aa[1]);
$user=str_replace(strrchr($username,"@"),"",$username);
unset($aa);
//if($SG_USERNAME==$admin){
if($accountstatus=="active"){ $type=" "; $status=true;$n=0;} else { $type=" "; $status=false;$n=1;}
//if($accountstatus=="active"){ $type="";} else { $type=" |  | "; }
//}
if($SG_USERNAME."@".$SG_DOMAIN!=$username){ $img=" ";}
$ListOut .= " \n".
"\t".$i." | ".
"".$username." | \n".
"".$realname." | \n".
"".$mquota."/".$fquota." | \n".
"".$type." | \n".
" ".$img." | \n".
"\t \n";
}
}
// Éú³ÉpageÁ¬½ÓË÷Òý
function PageIndex($page,$pagecount,$rownum,$mailuser){
$list.="µ±Ç°ÊÇµÚ $page/$pagecount Ò³ Ê×Ò³ ÉÏÒ»Ò³ ";
$list.="ÏÂÒ»Ò³ βҳ ¹² ".$rownum." Ìõ
";
return $list;
}
// load Template
$OUT['CHARSET'] = $CFG_CHARSET[$Get_Lang]; // Ò³Ãæ×Ö·û±àÂëÉèÖÃ
$OUT['HREF_NAME'] = "?sortby=name&page=$get_page&direct=$get_direct";
$OUT['HREF_EMAIL'] = "?sortby=email&page=$get_page&direct=$get_direct";
$OUT['LIST'] = $ListOut;
$OUT['PAGEINDEX'] = PageIndex($page,$pagecount,$rownum,$mailuser);
$OUT['LANG'] = $Get_Lang; // µÇ¼ºóÏÔʾÓïÑÔ
$OUT['NICKNAME'] = $SG_NICKNAME; // Óû§ÐÕÃû
$OUT['EMAIL'] = "$SG_USERNAME@$SG_DOMAIN"; // Óû§emailµØÖ·
include "template/$CFG_TEMPLATE/_adv.php";
include "template/$CFG_TEMPLATE/_mailuserset.php";
£Ì£Ä£Á£ÐÊÇÒ»ÖÖרΪ¶Á¶øÉè¼ÆµÄ¿â£¬²éѯËÙ¶ÈÊÇĿǰ¿ìµÄ£¬·Ç³£ÊʺÏÓÚÔÚÓʼþϵͳÖжԴóÁ¿µÄÓʼþÕ˺ŵĴ洢
|