Location: PHPKode > scripts > LDAP class > ldap-class/example1.php
<html>
<head>
<title> class.ldap.php4: Example1 </title>
</head>
<body>
<?php

include('class.ldap.php4');

// The hostname of our LDAP server
$ServerHost = 'localhost';

// The base DN we'll be querying (saves lots of typing)
$BaseDN = 'ou=staff,dc=example,dc=org';

// The user we're going to try to log in as
$Username = 'fred';

// The user's password
$Password = 'barny';

// Create an ldap object
$ld = new ldap($ServerHost);

// Connect to the server
if (!$ld->connect()) {
	die("Error connecting: ".$ld->ldapError."\n");
}

// We'll try to log in as a user
if ($ld->bind("uid=$Username,$BaseDN",$Password)) {
	// Example of the added 'children' function
	// Get a list of child nodes under our username
	if ($children = $ld->children("uid=$Username,$BaseDN")) {
		print "<b>Children under our $Username's node</b><pre>\n";
		var_dump($children);
		print "</pre>\n";
	} else {
		print "Error getting children: ".$ld->ldapError."<br>\n";
	}

	// Find an entry under the address book
	// All search functions return ldapresult objects
	if ($sr = $ld->searchSubtree("ou=AddressBook,dc=example,dc=org","givenName=wilma",array('cn','givenName','sn','homePhone'))) {
		// Get the first entry that the search returns
		// ldapresult->firstEntry returns ldapresultentry objects
		if ($entry = $sr->firstEntry()) {
			printEntry($entry);
			// More then one result?
			// ldapresultentry->nextEntry() simply updates the existing entry
			while ($entry->nextEntry()) {
				printEntry($entry);
			}
		} else {
			die("Error fetching entry: ".$sr->ldapError."\n");
		}
		// Good idea if you're doing lots of large queries, but not required
		$sr->free();
	} else {
		die("Error performing search: ".$ld->ldapError."\n");
	}
} else {
	die("Error binding: ".$ld->ldapError."\n");
}


function printEntry($entry) {
	print "<b>DN:</b>".$entry->getDN();
	// Fetch all the attributes
	if ($attrs = $entry->getAttributes()) {
		print "<b>cn:</b> ".$attrs['cn']."<br>\n";
		print "<b>givenName:</b> ".$attrs['givenName']."<br>\n";
		print "<b>sn:</b> ".$attrs['sn']."<br>\n";
		print "<b>homePhone</b> ".$attrs['homePhone']."<br>\n";
	} else {
		print "Error while fetching attributes: ".$entry->ldapError."<br>\n";
	}
}
?>
</body>
</html>
Return current item: LDAP class