αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαžαžαž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“αž‚αŸαž αž‘αŸ†αž–αŸαžš PHP + LDAP

αžœαžΆαž”αžΆαž“αž€αžΎαžαž‘αžΎαž„αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžαžΆ αž™αž»αž‘αŸ’αž’αž“αžΆαž€αžΆαžšαžŠαŸαž’αŸ†αž˜αž½αž™ (αž‘αžΆαž€αŸ‹αž‘αž„αž‚αŸ’αž“αžΆ) αž˜αžΆαž“αž€αžΆαžšαž·αž™αžΆαž›αŸαž™αžŠαžΆαž…αŸ‹αžŸαŸ’αžšαž™αžΆαž›αž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαŸ‚αž›αž˜αžΆαž“αž…αŸ†αž“αž½αž“αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŸαž˜αžšαž˜αŸ’αž™αŸ” αž€αžΆαžšαž·αž™αžΆαž›αŸαž™αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ…αž€αŸ’αž“αž»αž„αž”αžŽαŸ’αžαžΆαž‰αžαŸ‚αž˜αž½αž™αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŠαŸ‚αž“αžšαž½αž˜ αž€αžΆαžšαž·αž™αžΆαž›αŸαž™αž“αžΈαž˜αž½αž™αŸ—αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž€αŸ’αž“αž»αž„ Active Directory (αž αŸ…αž€αžΆαžαŸ‹αžαžΆ AD) αž‡αžΆαž’αž„αŸ’αž‚αž—αžΆαž–αž’αž„αŸ’αž‚αž—αžΆαž– (OU) αžŠαŸ‚αž›αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžšαž½αž…αž αžΎαž™αŸ”

αžœαžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž“αžΌαžœαž±αž€αžΆαžŸαžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αžšαž”αžŸαŸ‹αž”αž»αž‚αŸ’αž‚αž›αž·αž€αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžšαž–αžΈ AD αž™αŸ‰αžΆαž„αž†αžΆαž”αŸ‹αžšαž αŸαžŸ αž“αž·αž„αžŠαŸ„αž™αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž”αŸ’αžšαžΉαž„αž”αŸ’αžšαŸ‚αž„ αž“αž·αž„αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ„αž™αž₯αžαž‚αž·αžαžαŸ’αž›αŸƒαž–αžΈαž‘αž˜αŸ’αž›αžΆαž”αŸ‹αž“αŸƒαž€αžΆαžšαž€αŸ‚αžŸαž˜αŸ’αžšαž½αž›αž―αž€αžŸαžΆαžšαž’αžαŸ’αžαž”αž‘αžŠαŸ‚αž›αžŠαžΎαžšαžαž½αž‡αžΆαžŸαŸ€αžœαž—αŸ…αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“αŸ”

αž˜αž·αž“αž˜αžΆαž“αž‡αž˜αŸ’αžšαžΎαžŸαžŸαž˜αžšαž˜αŸ’αž™αžŠαŸ‚αž›αžαŸ’αžšαŸ€αž˜αžšαž½αž…αž‡αžΆαžŸαŸ’αžšαŸαž…αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž“αŸ„αŸ‡αž‘αŸ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžαŸ’αž‰αž»αŸ†αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αžŠαŸ„αž™αžŠαŸƒ αž“αž·αž„αž€αŸ’αž”αžΆαž›αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αŸ”

αž…αžΌαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆαžŠαŸ†αž”αžΌαž„αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαžαžΆαžαžΎαžαŸ’αžšαžΌαžœαž”αŸ’αžšαžΎαž’αŸ’αžœαžΈ αžœαžΆαžŸαžΆαž˜αž‰αŸ’αž‰ - αžαžαž…αž»αž„αž€αŸ’αžšαŸ„αž™αž‚αž½αžšαžαŸ‚αž˜αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸƒαžŠαŸ‚αž“αžαžΆαž˜αžšαž™αŸˆαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžšαž»αž€αžšαž€αŸ” αžšαžΏαž„αžŠαŸ†αž”αžΌαž„αžŠαŸ‚αž›αž‚αž·αžαž‚αžΊ PHP αž—αŸ’αž‡αžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™ ldap αž αžΎαž™αž™αžΎαž„αž“αžΉαž„αž”αŸ’αžšαžΎαžœαžΆαŸ” αžαŸ’αž‰αž»αŸ†αž…αžΆαžαŸ‹αž‘αž»αž€αž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸαžŠαŸαž’αŸ†αž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ 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

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹