|
What This Is
WebLDAP is a web
interface to an LDAP server storing whitepages information (aka
contact manager, aka address book).
WebLDAP uses PHP and HTML
files delivered by a webserver to interact with an LDAP Server.
WebLDAP was created using
great OpenSource software
such as PHP,
OpenLDAP, and the Apache
Web Server. Other client programs, such as Netscape Communicator's
Address Book, can also see the information. This was the primary
reason I wanted to use LDAP. But since the Netscape Communicator
Address Book didn't have the other fields I wanted, WebLDAP was written.
To see some screenshots of WebLDAP,
check out the presentation given at the 1999 WVU
Computing and Technology Fair: Creating
a Web Based Contact Manager using Open Source Software.
Features
- Add records
- Remove records
- Edit records
- Search for a record(s) using various fields
- Export the records to an ASCII file
- View the information from a web browser
Current Status
WebLDAP is currently
being used at a couple locations. But, I'm not calling it a "1.0"
release since I think there are some rough edges as this was my
first real exposure to PHP and with working with LDAP. While WebLDAP is in use, I have not tested it very thouroughly with the PHP
3.0.13, nor OpenLDAP 1.2.6 (the latest releases I have). I don't
expect major problems though. I believe the code as is, is usable,
with a little tweaking to make it work on a particular server.
I have not done anything with PHP 4.0 yet. (Haven't had the time
and I'm having some troubles compiling it on my LinuxPPC machine.)
So let's start with a 0.01 release.
- Requirements
- A web server that can use PHP, The
Apache WebServer is
used during development.
- PHP
- An LDAP server. OpenLDAP
is used during development.
- A web browser. I have only used Netscape
Communicator for Mac and Windows 95/98 during development.
- Oh, and some patience to understand my
code. :)
I would think any web server using PHP,
and any LDAP server that can be used with PHP would also work.
However, during development and testing, no other servers beside
Apache and OpenLDAP have been used.
Download
You can download the WebLDAP tar-gzip file here: webldap-0.01.tar.gz,
filesize: 45856 bytes.
Installation
-
Before trying WebLDAP,
make sure your web server, PHP, and LDAP server are working
properly. (Refer to the documentation/websites for PHP and
your LDAP server for more information.). Otherwise WebLDAP won't work.
You'll need to untar/ungzip the archive,
which will create a directory with the code files and README
file. You can locate the files wherever you like, but your
webserver must have permissions to access them.
To configure WebLDAP,
you will need to edit files in the "custom" directory. The
code should be commented enough for easy configuring (I hope).
Some of the customizing is tedious. Due to the fact that each
field name from the LDAP server is codede into each file,
and in no way dynamically determined from the LDAP server,
if that's even possible. (Which probably is I just don't know
how.)
Load the index.html page and see if it works.
-
-
About the Code
-
This was my first real use of PHP and LDAP.
I hope there are enough comments and that they are useful.
I tried to create a specific set of files, in the 'custom'
directory, that need to be edited in order to use WebLDAP on different servers. Hopefully I didn't miss anything. The
rest of the code can be changed to your liking if you wish.
One thing I really liked about PHP was the 'required' function.
I use it quite often. I also did what error checking I could.
The LDAP calls were all based off the examples from the PHP
documentation.
What do we do from here?
I will continue to work on WebLDAP for my client's use, my own company's use, and possibly future
clients. But if anyone else wants to contribute some code,
they are more then welcome.(see below)
I've never really worked on an OpenSource project, but wouldn't
mind seeing more people benefit from WebLDAP if they can.
The company I work for has its own webserver
and strangely enough I'm the administrator. So as long as
my company's around, WebLDAP will have a
home. If there's enough interest, we can even start a group
to work on WebLDAP. I can also setup my
servers Majordomo for an email list.
Improvement Ideas
WebLDAP was my first
project using PHP and LDAP. There's a LOT I don't know about
PHP and LDAP, I'm sure there are several things that can be
improved. A few ideas I have are:
- An important one - Better, easier
way to customize WebLDAP.
- A way to import records.
- Easier way to determine fields to use,
add fields.
- Better documentation on what WebLDAP can do, how to use it, etc.
- Be sure WebLDAP works
thru a SSL connection. (I have the RedHat Secure Web Server
running just haven't tried it yet).
I will be trying to update WebLDAP for my company's own internal use and for my clients. I can't
gurantee how often though. But if you have anything to contribute,
please do! (see below)
History
- 1999: WebLDAP was originally
written for a client of Literati
Information Technology, LLC, and then presented at the
1999 WVU Academic Computing Fair as an exmaple on how to
use LDAP and PHP to create a web application. The presentation
was posted on the Literati
web site. After several requests about whether the code
would be released, it was then cleaned up a little and made
to be an open source project.
- June 2000: I'm finally getting off
my lazy butt and getting this out.
Initial posting of web pages/php code:
Download
Contributors
License, Copyright
WebLDAP is © Copyright
1999-2000 Robert Burton, rburton@literati.com.
Any contributions will be, of course, copyright to the authors.
WebLDAP is distributed
under the GPL
(GNU General Public License) Version 2. If you have anything
to contribute please email me (see below).
I'm going to come clean and admit I haven't
completely read the GPL yet. But I do know there are some
things that still need to be done to completely comply with
the GLP, such as copyright statements in all the source code
files. Right now though I don't have time to do this, I'm
leaving the country for a few weeks (as of June 10, 2000),
but this compliance with the GPL is a top priority. I'll take
a copy of the GPL with me, it'll give me something to read
on the plane :)
By using this software, you understand and
agree that this software is provided "as is" without warranty
of any kind. In no event shall the author be liable for any
consequential, incidental, or special damages whatsoever (including,
without limitation, damages for loss of critical data, loss
of profits, interruption of business and the like) arising
out of the use or inability to use this software.
Basically, if something goes wrong, I and
anyone else who contributes to WebLDAP are
not taking the fall. But we will try to help if we can.
Comments
If you have any comments about WebLDAP,
about it's code, usefullness, or this site, feel free to email
me, Bob
Burton.
|