WeberDev.com PHP and MySQL Code

LOG IN
BEGINNER GUIDESPHP CLASSESCODE SEARCHARTICLES SEARCHPHP FORUMSPHP MANUALPHP FUNCTIONS LISTWEB SITE TEMPLATES
Start typing to search for PHP and MySQL Code Snippets and Articles Search
Submit a code Example / Snippet Join us on FaceBook
Submit a code Example / Snippet Submit Your Code
Poker Tournaments Poker Tournaments
Poker Guide for Developers Poker Guide for Developers
Search Engine Optimization Monitor SEO Monitor
Web Site UpTime Monitor UpTime Monitor
Your Personal Examples List My Favorite Examples
Your Personal Articles List My Favorite Articles
Edit Account Info Update Your Profile
PHP Code Search
Web Development Forums
Learn MySQL Playing Trivia
PHPBB2 Templates
Web Development Resources
Web Development Content
Internet Security Software
PHPClasses
PHP Editor
PHP Jobs
Vision.To Design
Ajax Tutorials
PHP Programming Help
PHP/MySQL Programming
Webmaster Resources
Webmaster Forum
XML meta language
website builder
פרייסז - הכח לקנות עובר לידיים שלך
Texas Holdem Poker Evangelists

Go Back Add a Comment Send this example to a friend Add this Article to your personal favoritest for easy future access to your favorite Code Examples and Articles. Submit a code example Print this code example.
BACK ADD A COMMENT SEND TO A FRIEND ADD TO MY FAVORITES ADD CODE EXAMPLES PRINT
Title : Introduction to LDAP
Categories : LDAP, PHP
Boaz Yahav
Date : May 15th 1999
Grade : 3 of 5 (graded 8 times)
Viewed : 10754
File : No file for this code example.
Images : No Images for this code example.
Search : More code by Boaz Yahav
Action : Grade This Code Example
Tools : My Examples List

Submit your own code examples  Submit your own code examples 
 

LDAP is the Lightweight Directory Access Protocol, and is a protocol
used to access "Directory Servers". The Directory is a special kind of
database that holds information in a tree structure.

The concept is similar to your hard disk directory structure, except that
in this context, the root directory is "The world" and the first level
subdirectories are "countries". Lower levels of the directory structure
contain entries for companies, organisations or places, while yet lower
still we find directory entries for people, and perhaps equipment or
documents.

To refer to a file in a subdirectory on your hard disk, you might use
something like

/usr/local/myapp/docs

The forwards slash marks each division in the reference, and the
sequence is read from left to right.

The equivalent to the fully qualified file reference in LDAP is
the "distinguished name", referred to simply as "dn". An example dn
might be.

cn=John Smith,ou=Accounts,o=My Company,c=US

The comma marks each division in the reference, and the sequence is
read from right to left. You would read this dn as ..

country = US
organization = My Company
organizationalUnit = Accounts
commonName = John Smith

In the same way as there are no hard rules about how you organise
the directory structure of a hard disk, a directory server manager can
set up any structure that is meaningful for the purpose. However,
there are some conventions that are used. The message is that you
can not write code to access a directory server unless you know
something about its structure, any more than you can use a database
without some knowledge of what is available.

Complete code example
Retrieve information for all entries where the surname starts with "S"
from a directory server, displaying an extract with name and email
address.

Example 1. LDAP search example

<?php
// basic sequence with LDAP is connect, bind, search, interpret search
// result, close connection

echo "<h3>LDAP query test</h3>";
echo "Connecting ...";
$ds=ldap_connect("localhost"); // must be a valid LDAP server!
echo "connect result is ".$ds."<p>";

if ($ds) {
echo "Binding ...";
$r=ldap_bind($ds); // this is an "anonymous" bind, typically
// read-only access echo "Bind result is
echo "Bind result is ".$r."<p>";

echo "Searching for (sn=S*) ...";
// Search surname entry
$sr=ldap_search($ds,"o=My Company, c=US", "sn=S*");
echo "Search result is ".$sr."<p>";

echo "Number of entires returned is ".ldap_count_entries
($ds,$sr)."<p>";

echo "Getting entries ...<p>";
$info = ldap_get_entries($ds, $sr);
echo "Data for ".$info["count"]." items returned:<p>";

for ($i=0; $i<$info["count"]; $i++) {
echo "dn is: ". $info[$i]["dn"] ."<br>";
echo "first cn entry is: ". $info[$i]["cn"][0] ."<br>";
echo "first email entry is: ". $info[$i]["mail"][0] ."<p>";
}

echo "Closing connection";
ldap_close($ds);

} else {
echo "<h4>Unable to connect to LDAP server</h4>";
}
?>


Using the PHP LDAP calls
You will need to get and compile LDAP client libraries from either the
University of Michigan ldap-3.3 package or the Netscape Directory SDK.
You will also need to recompile PHP with LDAP support enabled before
PHP's LDAP calls will work.

Before you can use the LDAP calls you will need to know ..


The name or address of the directory server you will use

The "base dn" of the server (the part of the world directory that is held
on this server, which could be "o=My Company,c=US")

Whether you need a password to access the server (many servers will
provide read access for an "anonymous bind" but require a password
for anything else)


The typical sequence of LDAP calls you will make in an application will
follow this pattern:

ldap_connect() // establish connection to server
|
ldap_bind() // anonymous or authenticated "login"
|
do something like search or update the directory
and display the results
|
ldap_close() // "logout"


More Information
Lots of information about LDAP can be found at


Netscape

University of Michigan

OpenLDAP Project

LDAP World

The Netscape SDK contains a helpful Programmer's Guide in .html
format.




A web-based php3 IMAP email client supporting address books, attachements (downloading and sending), LDAP searching, and much much more.
Categories : Email, PHP, LDAP
ldap_add -- Add entries to LDAP directory
Categories : PHP, PHP Functions, LDAP
Authenticator for Exchange Server LDAP
Categories : PHP, Authentication, LDAP, Security, Sessions
Query2Report : Generating Html, Pdf and Csv Reports from SQL Query
Categories : PHP, PHP, HTML, PDF, Excel
How to query a directory server using LDAP. Keywords: ldap_connect ldap_search
Categories : LDAP, Network, PHP
Authentication script to authenticate users in Active Directory through LDAP.
Categories : LDAP, Authentication, Cookies, PHP
Windows 2003 Active Directory User Query (Ldap)
Categories : PHP, LDAP
function_exists -- Return true if the given function has been defined
Categories : PHP, PHP Functions, Functions
mediaCat-GTK v2.0.0 - an mp3/cd/dvd cataloging utility written in php-gtk which interfaces with mysql and ms access (or db supported by PHP's Unified ODBC Functions)
Categories : PHP, MySQL, MS Access, Utilities, Databases
Array Insertion
Categories : PHP, PHP Classes, Arrays
Is there any way to test that the $result has null values or not without reading the field values in the results in postgre?
Categories : PostgreSQL, PHP, Databases
crop and resize image class using gd library function
Categories : PHP, PHP Classes, GD image library, Graphics
Vote-Poll script that has a wrapper class that allows the user to create multiple polls on the same page with little trouble.
Categories : PHP, PHP Classes, HTML and PHP
Global Dump Highlighted
Categories : PHP, Variables, Global Variables
How to get the exit code of a function ran by system().
Categories : PHP