рд╡реЗрдм рдареЗрдЧрд╛рдирд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ PHP + LDAP рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрджреИ

рдпреЛ рдпрд╕реНрддреЛ рднрдпреЛ рдХрд┐ (рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд) рдареВрд▓реЛ рдЕрднрд┐рдпрд╛рдирдорд╛ рдзреЗрд░реИ рдЯрд╛рдврд╛рдХрд╛ рдХрд╛рд░реНрдпрд╛рд▓рдпрд╣рд░реВ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рд╕рднреНрдп рд╕рдВрдЦреНрдпрд╛рдХреЛ рд╕рд╛рде рдерд┐рдПред рд╕рдмреИ рдХрд╛рд░реНрдпрд╛рд▓рдпрд╣рд░реВ рдПрдХ рд╕рд╛рдЭрд╛ рдбреЛрдореЗрдирдХреЛ рд╕рд╛рде рдПрдЙрдЯреИ рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдЬрдбрд╛рди рднрдПрдХрд╛ рдЫрдиреН, рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рд░реНрдпрд╛рд▓рдпрд▓рд╛рдИ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдорд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ (рдпрд╕рдкрдЫрд┐ AD рднрдирд┐рдиреНрдЫ) рд╕рдВрдЧрдарди рдЗрдХрд╛рдИ (OU) рдХреЛ рд░реВрдкрдорд╛, рдЬрд╕рдорд╛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВ рдкрд╣рд┐рд▓реЗ рдиреИ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХрд╛ рдерд┐рдПред

рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ AD рдмрд╛рдЯ рдЖрд╡рд╢реНрдпрдХ рдХрд░реНрдордЪрд╛рд░реАрдХреЛ рд╕рдореНрдкрд░реНрдХ рдЬрд╛рдирдХрд╛рд░реА рдЫрд┐рдЯреЛ рд░ рд╕рд╣рдЬ рд░реВрдкрдорд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗ рдЕрд╡рд╕рд░ рджрд┐рди рдЖрд╡рд╢реНрдпрдХ рдерд┐рдпреЛ, рд░ рдареЗрдЧрд╛рдирд╛ рдкреБрд╕реНрддрд┐рдХрд╛рдХреЛ рднреВрдорд┐рдХрд╛ рдЦреЗрд▓реНрдиреЗ рдкрд╛рда рдлрд╛рдЗрд▓ рд╕рдореНрдкрд╛рджрди рдЧрд░реНрдиреЗ рджрд┐рдирдЪрд░реНрдпрд╛рдмрд╛рдЯ рдирд┐:рд╢реБрд▓реНрдХ рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рд╢рд╛рд╕рдХрд╣рд░реВред

рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рдирдХреЛ рд▓рд╛рдЧрд┐ рдХреБрдиреИ рддрдпрд╛рд░-рдмрдирд╛рдЗрдПрдХрд╛ рдЙрдкрдпреБрдХреНрдд рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рдерд┐рдПрдирдиреН, рддреНрдпрд╕реИрд▓реЗ рдореИрд▓реЗ рдЖрдлреНрдиреИ рд╣рд╛рдд рд░ рдЯрд╛рдЙрдХреЛрд▓реЗ рд╕рдмреИ рдХрд╛рдо рдЧрд░реНрдиреБрдкрд░реНтАНрдпреЛред

рдпрд╕ рддрдереНрдпрдХреЛ рд╕рд╛рде рд╕реБрд░реВ рдЧрд░реМрдВ рдХрд┐ рдкрд╣рд┐рд▓реЗ рддрдкрд╛рдИрд▓реЗ рдХреЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рднрдиреЗрд░ рдирд┐рд░реНрдгрдп рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рдпреЛ рд╕рд░рд▓ рдЫ - рдЕрдиреНрддрд┐рдо рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реА рдбреЛрдореЗрдирдХрд╛ рд╕рдмреИ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рдмреНрд░рд╛рдЙрдЬрд░ рдорд╛рд░реНрдлрдд рдЙрдкрд▓рдмреНрдз рд╣реБрдиреБрдкрд░реНрджрдЫред рджрд┐рдорд╛рдЧрдорд╛ рдЖрдЙрдиреЗ рдкрд╣рд┐рд▓реЛ рдХреБрд░рд╛ ldap рд╕рдБрдЧ рд╕рдВрдпреЛрдЬрдирдорд╛ PHP рд╣реЛ, рд░ рд╣рд╛рдореА рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗрдЫреМрдВред рдо PHP рдХреЛ рдкреНрд░рдпреЛрдЧрдХреЛ рдареВрд▓реЛ рдлрд╛рдЗрджрд╛рд▓рд╛рдИ рдпрд╕рдХреЛ рд╕рд╛рдкреЗрдХреНрд╖рд┐рдХ рд╕рд░рд▓рддрд╛ рдорд╛рдиреНрдЫреБ - рдХреБрдиреИ рдкрдирд┐ рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рд╢рд╛рд╕рдХрд▓реЗ рдереЛрд░реИ рдмреБрдЭреЗрдХреЛ рд╕рд╛рде рдХреЛрдбрдорд╛ рдЖрд╡рд╢реНрдпрдХ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдЧрд░реНрди рд╕рдХреНрд╖рдо рд╣реБрдиреЗрдЫ, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рднрдПрдорд╛, рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рддрдирд╛рд╡ рдмрд┐рдирд╛ред

рддреНрдпрд╕реИрд▓реЗ, рд╕реБрд░реБ рдЧрд░реМрдВред рдкрд╣рд┐рд▓реЗ, рдбреЛрдореЗрдирдорд╛ рдЬрдбрд╛рдирдХреЛ рд▓рд╛рдЧрд┐ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВ рд╕реЗрдЯ рдЧрд░реМрдВ:

$srv ="SERVER";
$srv_domain ="DOMAIN.COM";
$srv_login ="USERNAME@".$srv_domain; 
$srv_password ="PASSWORD";

рдЕрд░реНрдХреЛ рдмрд┐рдиреНрджреБ рднрдиреЗрдХреЛ рдХреБрди OU рдорд╛ рд╣рд╛рдореА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рдЦреЛрдЬреА рдЧрд░реНрдиреЗрдЫреМрдВ рднрдиреЗрд░ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрдиреБ рд╣реЛред рд╣рд╛рдореА $_GET['place'] рдмрд╛рдЯ рдорд╛рдирд╣рд░реВ рдЕрд╡рд░реЛрдз рдЧрд░реЗрд░ рдпреЛ рдЧрд░реНрдиреЗрдЫреМрдВред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдпрджрд┐ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдареЗрдЧрд╛рдирд╛рдорд╛ рдЬрд╛рдиреНрдЫ server/index.php?place=рдкрд╣рд┐рд▓реЛ, рддреНрдпрд╕рдкрдЫрд┐ рдЪрд░ $ рд╕реНрдерд╛рди рдорд╛рди рддреЛрдХрд┐рдиреЗрдЫ рдкрд╣рд┐рд▓реЛ.

$place = (@$_GET['place']);
$doscript=true;
switch($place){ 
case "first" :
	$dn ="OU=ou1,OU=DOMAIN,dc=DOMAIN,dc=COM";			
	break;
case "second":
	$dn ="OU=ou2,OU=DOMAIN,dc=DOMAIN,dc=COM";			
	break;
	//╨╖╨┤╨╡╤Б╤М ╨╝╨╛╨╢╨╜╨╛ ╨┤╨╛╨▒╨░╨▓╨╕╤В╤М ╨╡╤Й╤С ╤Г╤Б╨╗╨╛╨▓╨╕╨╣.
default:
	$doscript=false; 
	break;
}
if (!$doscript) include "main_table.html";

рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ $doscript рдорд╛рди рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ - рдЪрд╛рд╣реЗ рд╣рд╛рдореАрд▓реЗ OU рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реЗрдХрд╛ рдЫреМрдВ рдЬрд╕рдорд╛ рд╣рд╛рдореА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВ рдЦреЛрдЬреНрдиреЗрдЫреМрдВ рд╡рд╛ рдЫреИрдиреМрдВред рдпрджрд┐ рддреНрдпрд╣рд╛рдБ "switch-case" рдорд╛ рд╕реВрдЪреАрдмрджреНрдз рдХреБрдиреИ рдкрдирд┐ рдорд┐рд▓реНрджреЛрдЬреБрд▓реНрджреЛ рдЫреИрди рднрдиреЗ, рддреНрдпрд╕рдкрдЫрд┐ $doscript=false, рд╕реНрдХреНрд░рд┐рдкреНрдЯрдХреЛ рдореБрдЦреНрдп рднрд╛рдЧ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реБрдиреЗрдЫреИрди, рд░ рд╕реБрд░реБ рдкреГрд╖реНрда "main_table.html" рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реБрдиреЗрдЫ (рдо рддрдкрд╛рдИрдВрд▓рд╛рдИ рдпрд╕ рдмрд╛рд░реЗ рдмрддрд╛рдЙрдиреЗрдЫреБред рдпреЛ рдЕрдиреНрддрдорд╛)ред

рдпрджрд┐ рд╣рд╛рдореАрд▓реЗ OU рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реЗрдХрд╛ рдЫреМрдВ, рддреНрдпрд╕рдкрдЫрд┐ рд╣рд╛рдореА рдердк рдХрд╛рд░реНрдпрд╣рд░реВрдорд╛ рдЕрдЧрд╛рдбрд┐ рдмрдвреНрдЫреМрдВ: рд╣рд╛рдореА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реА рдкреГрд╖реНрда рдХреЛрд░реНрди рд╕реБрд░реБ рдЧрд░реНрдЫреМрдВ:

else if ($doscript) {
{echo "
<!DOCTYPE html> 
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<link rel='shortcut icon' href='ico.png'>
<meta charset='windows-1251/ '>

рд╣рд╛рдореАрд▓реЗ рдердк рд░рдорд╛рдЗрд▓реЛ рдЙрдкрд╕реНрдерд┐рддрд┐рдХреЛ рд▓рд╛рдЧрд┐ рд╢реИрд▓реАрд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫреМрдВ (рд╣реЛ, рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ css рдлрд╛рдЗрд▓рдХреЛ рд░реВрдкрдорд╛ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рддрд░ IE рдХрд╛ рдХреЗрд╣реА рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рдпрд╕ рддрд░рд┐рдХрд╛рд▓реЗ рд╕реЗрдЯ рдЧрд░рд┐рдПрдХрд╛ рд╢реИрд▓реАрд╣рд░реВ рд╕реНрд╡реАрдХрд╛рд░ рдЧрд░реНрди рдЪрд╛рд╣рдБрджреИрдирдиреН, рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рд╕рд┐рдзреИ рд▓рд┐рдкрд┐рдорд╛ рд▓реЗрдЦреНрдиреБрдкрд░реНрдЫ):

<style>
	*{text-align: center; font-family:tahoma; font-size:14px;}
	a{text-decoration: none; color: #000;}
	a:hover{text-decoration: underline; color: #0059FF;}
	#bold{text-decoration: none; font-weight: 600;font-size:20px;}
	#table,tr,td{border-style:solid;border-width:1px;	border-collapse:collapse;padding:5px; height:22px;border-color:#7d7d7d;}
	/* ╨Э╨╡╤З╨╡╤В╨╜╤Л╨╡ ╤Б╤В╤А╨╛╨║╨╕ */#table tbody tr:nth-child(odd){background: #fff;}
	/* ╨з╨╡╤В╨╜╤Л╨╡ ╤Б╤В╤А╨╛╨║╨╕ */   #table tbody tr:nth-child(even){background: #F7F7F7;}	
	#noborder{border-width: 0 px; border-style: none;}	
	#sp30px{text-indent: 30px;text-align: justify;}
	#smallsize{font-family:tahoma; text-indent: 5px; text-align:left; font-size:12px;}
	#top {background: #ffffff;
		text-align: center;
		left:0;
		top:0px;
		table-layout: fixed;
		border-style:solid;
		border-width:0px;
		border-collapse:collapse;
		padding:0px;
		height:22px;
		border: 0px;
		z-index: 99999;
		display:block;
		width:80px;
		opacity: 0.6;
		filter: alpha(Opacity=60);
		height:100%;
		position:fixed;}
	#top:hover{background: #afafaf;opacity: 100;filter: alpha(Opacity=100);text-decoration: none;color: #000000;}
	.smalltext{padding-top: 1px;
		padding-bottom: 1px;
		text-align: bottom;
		font-family:tahoma;
		color: #a0a0a0;
		line-height: 7px;
		font-size: 10px;}
	.smalltext:hover{color: #0000ff;}		
	.transition-rotate {position: relative;
		z-index: 2;
		margin: 0 auto;
		padding: 5px;
		text-align: center;
		max-width: 500px;
		cursor: pointer;
		transition: 0.1s linear;}
	.transition-rotate:hover {-webkit-transform: rotate(-2deg);	transform: rotate(-2deg);}
	#lineheight{
		text-align: left;
		line-height: 1px;
		text-decoration: none;
		font-weight: 600;
		font-size:20px;}
</style>

рд╣рд╛рдореАрд▓реЗ рд╢реИрд▓реАрд╣рд░реВ рдкреВрд░рд╛ рдЧрд░рд┐рд╕рдХреЗрдХрд╛ рдЫреМрдВ, рдЕрдм рд╣рд╛рдореА рдЯреНрдпрд╛рдмрдХреЛ рд╢реАрд░реНрд╖рдХ рд▓реЗрдЦреНрдЫреМрдВ рд░ рдореБрдЦреНрдп рдкреГрд╖реНрдардорд╛ рдлрд░реНрдХрди рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд▓рд┐рдЩреНрдХ рдХреЛрд░реНрдЫреМрдВ:

<title>Adressbook of ┬лYourMegaCompanyName┬╗</title>	
</head>
<body style='background-color:#ffffff;'>";
}
echo "
<table id='top'><tr><td id='top'>
<a href='index.php?place=main' id='top' >
<br><br><br>
<img src='back_to_main.png' alt='' border='0' width='75' height='60'/>
<p>╨Э╨░ ╨│╨╗╨░╨▓╨╜╤Г╤О</p></a>
</td></tr></table>
";

рд╣рд╛рдореА AD рджреНрд╡рд╛рд░рд╛ рдЦреЛрдЬ рдлрд┐рд▓реНрдЯрд░рд╣рд░реВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрдЫреМрдВ рд░ OU рдмрд╛рд░реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдЫреМрдВ:

$filter ="(&(objectcategory=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))"; //╨▓╤Б╨╡ ╨┐╨╛╨╗╤М╨╖╨╛╨▓╨░╤В╨╡╨╗╨╕, ╨║╤А╨╛╨╝╨╡ ╨╛╤В╨║╨╗╤О╤З╨╡╨╜╨╜╤Л╤Е.
$filter2 ="(objectCategory=OrganizationalUnit)"; // ╨┤╨╗╤П ╨┐╨╛╨╗╤Г╤З╨╡╨╜╨╕╤П ╨╕╨╜╤Д╨╛╤А╨╝╨░╤Ж╨╕╨╕ ╨╛ OU
$ds=ldap_connect($srv);   
if ($ds) { 
    $r=ldap_bind($ds,$srv_login,$srv_password);;     
	ldap_set_option($ds,LDAP_OPT_REFERRALS, 0);
	ldap_set_option($ds,LDAP_OPT_PROTOCOL_VERSION,3);
	$sr=ldap_search($ds,$dn ,$filter );   
    ldap_sort($ds,$sr, "givenname");
    $info = ldap_get_entries($ds, $sr); 
    $sr2=ldap_search($ds,$dn ,$filter2 );   
    $placeinfo = ldap_get_entries($ds, $sr2); 
$PlaceName = $placeinfo[0]["l"][0];  			// name of place
$PlaceAddres = $placeinfo[0]["street"][0];		// address of place
$PlaceMail = $placeinfo[0]["description"][0]; 	// mail of place
$PlacePhone = $placeinfo[0]["st"][0]; 		// phone of plase

рдЕрд░реНрдХреЛ рд╣рд╛рдореА рдкреГрд╖реНрдардХреЛ рд╢реАрд░реНрд╖ рдбрд┐рдЬрд╛рдЗрди рдЧрд░реНрдЫреМрдВ:

echo"<table align='center' height = '80'>
	<td id='noborder' ><div id='lineheight'>". $PlaceName ."</div></td></tr>
	<tr><td id='noborder' >". $PlaceAddres ."</td></tr>
    </table>
<table align='center' id='table'>
	<tr><td width='35' bgcolor = #f0f0e4>  тДЦ </td>
	<td width='300' bgcolor = #f0f0e4> Name </td>
	<td width='250' bgcolor = #f0f0e4> E-mail </td>
	<td width='60' bgcolor = #f0f0e4> Phone </td>
	<td width='150' bgcolor = #f0f0e4> Mobile </td></tr>
	<tr><td></td><td> ╨Ф╨░╨╜╨╜╤Л╨╡ OU </td><td>";
echo "<div class='transition-rotate'><a href=mailto:" . $PlaceMail .">" . $PlaceMail ." </a></div>";
echo "</td><td width='150'> " . $PlacePhone ." </td><td> - </td></tr>";

рдЕрд░реНрдХреЛ, рд╣рд╛рдореА рд▓реБрдкрдорд╛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рд░ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрдЫреМрдВ, рдЬрдмрдХрд┐ рдХреЗрд╣реА (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд╕реЗрд╡рд╛) рдЦрд╛рддрд╛рд╣рд░реВ рд▓реБрдХрд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореА рдХреЗрд╡рд▓ AD рдорд╛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд┐рд╡рд░рдгрд╣рд░реВрдорд╛ "рд░реВрдо" рдлрд┐рд▓реНрдбрдорд╛ "рд▓реБрдХрд╛рдЙрдиреБрд╣реЛрд╕реН" рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрдЫреМрдВ, рддреНрдпрд╕реНрддрд╛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВ рд╣реБрдиреЗрдЫреИрдирдиреНред рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдорд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд:

for ($i=0; $i<$info["count"];$i++) { 
$UserHide = $info[$i]["physicaldeliveryofficename"][0];
if ($UserHide != 'hide') {
$UserName = $info[$i]["cn"][0];                //╨Ш╨╝╤П ╨┐╨╛╨╗╤М╨╖╨╛╨▓╨░╤В╨╡╨╗╤П
$UserPosition = $info[$i]["title"][0]; 		// ╨Ф╨╛╨╗╨╢╨╜╨╛╤Б╤В╤М
$UserMail = $info[$i]["mail"][0];			//mail
if (!$UserMail)) $UserMail = "-";                  //╨╡╤Б╨╗╨╕ ╨╜╨╡╤В ╨┤╨░╨╜╨╜╤Л╤Е ╨╛ ╤П╤Й╨╕╨║╨╡ ╨▓ AD, ╤В╨╛ ╨╛╤В╨╛╨▒╤А╨░╨╢╨░╨╡╨╝ ╨┐╤А╨╛╤З╨╡╤А╨║
$UserIpPhone = $info[$i]["ipphone"][0];		//ip phone
	if (!$UserIpPhone) $UserIpPhone = "-";    //╨╡╤Б╨╗╨╕ ╨╜╨╡╤В ╨┤╨░╨╜╨╜╤Л╤Е ╨╛ ╤П╤Й╨╕╨║╨╡ ╨▓ AD, ╤В╨╛ ╨╛╤В╨╛╨▒╤А╨░╨╢╨░╨╡╨╝ ╨┐╤А╨╛╤З╨╡╤А╨║
$UserMobile = $info[$i]["mobile"][0];		//mobile
	if (!$UserMobile) $UserMobile = "-";     //╨╡╤Б╨╗╨╕ ╨╜╨╡╤В ╨┤╨░╨╜╨╜╤Л╤Е ╨╛ ╤П╤Й╨╕╨║╨╡ ╨▓ AD, ╤В╨╛ ╨╛╤В╨╛╨▒╤А╨░╨╢╨░╨╡╨╝ ╨┐╤А╨╛╤З╨╡╤А╨║

рд╡реИрд╕реЗ, рдпрджрд┐ рддрдкрд╛рдЗрдБ рдЕрд░реНрдХреЛ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдореВрд▓реНрдп рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ рднрдиреЗ, рд╕рдореНрдЭрдиреБрд╣реЛрд╕реН (рдпреЛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫ):
рдЕрдиреБрд░реЛрдзрдорд╛ рд╣рд╛рдореА рд╡рд┐рд╢реЗрд╖рддрд╛ рдирд╛рдо рдкрд╛рд╕ рдЧрд░реНрдЫреМрдВ рд╕рд╛рдиреЛ рдЕрдХреНрд╖рд░ рдЕрдХреНрд╖рд░рд╣рд░реВ, рдЕрдиреНрдпрдерд╛ рдпреЛ рдХрд╛рдо рдЧрд░реНрджреИрдиред

рд░ рддрд╛рд▓рд┐рдХрд╛рдорд╛ рдкреНрд░рд╛рдкреНрдд рдбрд╛рдЯрд╛ рдШреБрд╕рд╛рдЙрдиреБрд╣реЛрд╕реН:

    echo "<tr>
	<td>". $n+=1 ."</td>
	<td> ". $UserName ."<br> <div class='smalltext'>". $UserPosition ."</div></td><td>"; //	╨Ш╨╝╤П ╨┐╨╛╨╗╤М╨╖╨╛╨▓╨░╤В╨╡╨╗╤П ╨╕ ╨┤╨╛╨╗╨╢╨╜╨╛╤Б╤В╤М 
	if ($UserMail !='-') echo "<div class='transition-rotate'><a href=mailto:'$UserMail'>$UserMail  </a></div>";    // ╨╡╤Б╨╗╨╕ ╤Г ╨┐╨╛╨╗╤М╨╖╨╛╨▓╨░╤В╨╡╨╗╤П ╨╡╤Б╤В╤М e-mail ╤Б╨╛╨╖╨┤╨░╤С╨╝ ╤Б╤Б╤Л╨╗╨║╤Г ╨╜╨░ ╨╛╤В╨┐╤А╨░╨▓╨║╤Г ╨┐╨╕╤Б╤М╨╝╨░
	else echo "-"; //╨╡╤Б╨╗╨╕ ╨╜╨╡╤В e-mail - ╤Б╤В╨░╨▓╨╕╨╝ ╨┐╤А╨╛╤З╨╡╤А╨║.
 	echo "<td> ". $UserIpPhone ." </td>
 	<td> ". $UserMobile ." </td></tr>";
	}
}
echo "</table>";

рдЕрд░реНрдХреЛ, рд╣рд╛рдореА ldap рдЬрдбрд╛рди рдмрдиреНрдж рдЧрд░реНрдЫреМрдВ, рд╡рд╛ рд╕рд░реНрднрд░рдорд╛ рдЬрдбрд╛рди рдЧрд░реНрди рдЕрд╕рдореНрднрд╡ рдмрд╛рд░реЗ рд╕рдиреНрджреЗрд╢ рджреЗрдЦрд╛рдЙрдБрдЫреМрдВ:

ldap_close($ds); 
} 
else echo "<h4>Unable to connect to LDAP server</h4>"; 
echo '<br><br><br></body></html>';}

рднрд┐рддреНрд░рдмрд╛рдЯ рдлрд╛рдЗрд▓ "main_table.html" рд▓рд┐рдЩреНрдХрд╣рд░реВ рднрдПрдХреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг html рдкреГрд╖реНрда рд╣реЛ, рд░ рдпреЛ рдЬрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдЫ:

<head>
<link rel="shortcut icon" href="ico.png"/>
<meta charset="windows-1251"/>
<title>Adressbook of ┬лYourMegaCompanyName┬╗</title>
</head>
<body style='background-color:#ffffff;'>
<center><a href=index.php><IMG border="none" src="logo.png"/></a></center>
<center><b>Places and offices</b></center>
<br>
<table border="0" width="450" bgcolor="#dddddd" align="center" valign="middle" CELLSPACING="0">

<tr id="space"><td></td></tr>
<tr><td align="left" id="abz"><a href="index.php?place=ou1">OU1</a></td></tr>
<tr id="space"><td></td></tr>
<tr><td align="left" id="abz"><a href="index.php?place=ou2">OU2</a></td></tr>

</table></body></html>

рдпрджрд┐ рдореЗрд░реЛ рдХреЛрдбрд▓реЗ рдХрд╕реИрд▓рд╛рдИ рдорджреНрджрдд рдЧрд░реНрдЫ рднрдиреЗ, рдо рдЦреБрд╕реА рд╣реБрдиреЗрдЫреБ, рдпрд╕рд▓рд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН!

рддрдкрд╛рдЗрдБ рдпрд╕рд▓рд╛рдИ рд╕реНрд╡рддрдиреНрддреНрд░ рд░реВрдкрдорд╛ рддрдкрд╛рдЗрдБрдХреЛ рдЗрдЪреНрдЫрд╛ рдЕрдиреБрд╕рд╛рд░ рд╕рдореНрдкрд╛рджрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ (рд╕реБрдзрд╛рд░реНрдиреБрд╣реЛрд╕реН / рдЦрд░рд╛рдм) рд░ рдпрд╕рд▓рд╛рдИ рдХреБрдиреИ рдкрдирд┐ рдорд╛рдзреНрдпрдордмрд╛рдЯ рд╡рд┐рддрд░рдг рдЧрд░реНрдиреБрд╣реЛрд╕реНред

рддрдкрд╛рдИрдВрдХреЛ рдзреНрдпрд╛рдирдХреЛ рд▓рд╛рдЧрд┐ рдзрдиреНрдпрдмрд╛рдж!

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди