Nauka html'u i php'
LXXIII. LDAP Functions
Wstęp
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.
Lots of information about LDAP can be found at
The Netscape SDK contains a helpful Programmer's Guide in HTML format.
Wymagania
You will need to get and compile LDAP client libraries from either OpenLDAP or Bind9.net in order to compile PHP with LDAP support.
Instalacja
LDAP support in PHP is not enabled by default. You will need to
use the --with-ldap[=DIR]
configuration option when compiling PHP to enable LDAP support.
DIR is the LDAP base install directory. To enable SASL support,
be sure --with-ldap-sasl[=DIR] is
used, and that sasl.h exists on the system.
Note to Win32 Users: In order to enable this module on a Windows environment, you must copy several files from the DLL folder of the PHP/Win32 binary package to the SYSTEM folder of your Windows machine. (Ex: C:\WINNT\SYSTEM32, or C:\WINDOWS\SYSTEM). For PHP <= 4.2.0 copy libsasl.dll, for PHP >= 4.3.0 copy libeay32.dll and ssleay32.dll to your SYSTEM folder.
In order to use Oracle LDAP libraries, proper Oracle environment has to be set.
Konfiguracja uruchomieniowa
Na działanie tych funcji wpływają ustawienia zawarte w pliku php.ini.
Szczegóły i definicje dotyczące stałych PHP_INI_* znajdują się w rozdziale Dodatek G.
Typy zasobów
To rozszerzenie nie posiada żadnych rodzajów zasobów.
Stałe predefiniowane
Poniższe stałe są zdefiniowane w tym rozszerzeniu i stają się dostępne, gdy rozszerzenie jest dokompilowane do PHP, lub załadowane dynamicznie przy starcie.
- LDAP_DEREF_NEVER (integer)
- LDAP_DEREF_SEARCHING (integer)
- LDAP_DEREF_FINDING (integer)
- LDAP_DEREF_ALWAYS (integer)
- LDAP_OPT_DEREF (integer)
- LDAP_OPT_SIZELIMIT (integer)
- LDAP_OPT_TIMELIMIT (integer)
- LDAP_OPT_PROTOCOL_VERSION (integer)
- LDAP_OPT_ERROR_NUMBER (integer)
- LDAP_OPT_REFERRALS (integer)
- LDAP_OPT_RESTART (integer)
- LDAP_OPT_HOST_NAME (integer)
- LDAP_OPT_ERROR_STRING (integer)
- LDAP_OPT_MATCHED_DN (integer)
- LDAP_OPT_SERVER_CONTROLS (integer)
- LDAP_OPT_CLIENT_CONTROLS (integer)
- LDAP_OPT_DEBUG_LEVEL (integer)
- GSLC_SSL_NO_AUTH (integer)
- GSLC_SSL_ONEWAY_AUTH (integer)
- GSLC_SSL_TWOWAY_AUTH (integer)
Przykłady
Retrieve information for all entries where the surname starts with "S" from a directory server, displaying an extract with name and email address.
Using the PHP LDAP calls
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"
- Spis treści
- ldap_8859_to_t61 -- Translate 8859 characters to t61 characters
- ldap_add -- Add entries to LDAP directory
- ldap_bind -- Bind to LDAP directory
- ldap_close -- Alias dla ldap_unbind()
- ldap_compare -- Compare value of attribute found in entry specified with DN
- ldap_connect -- Connect to an LDAP server
- ldap_count_entries -- Count the number of entries in a search
- ldap_delete -- Delete an entry from a directory
- ldap_dn2ufn -- Convert DN to User Friendly Naming format
- ldap_err2str -- Convert LDAP error number into string error message
- ldap_errno -- Return the LDAP error number of the last LDAP command
- ldap_error -- Return the LDAP error message of the last LDAP command
- ldap_explode_dn -- Splits DN into its component parts
- ldap_first_attribute -- Return first attribute
- ldap_first_entry -- Return first result id
- ldap_first_reference -- Return first reference
- ldap_free_result -- Free result memory
- ldap_get_attributes -- Get attributes from a search result entry
- ldap_get_dn -- Get the DN of a result entry
- ldap_get_entries -- Get all result entries
- ldap_get_option -- Get the current value for given option
- ldap_get_values_len -- Get all binary values from a result entry
- ldap_get_values -- Get all values from a result entry
- ldap_list -- Single-level search
- ldap_mod_add -- Add attribute values to current attributes
- ldap_mod_del -- Delete attribute values from current attributes
- ldap_mod_replace -- Replace attribute values with new ones
- ldap_modify -- Modify an LDAP entry
- ldap_next_attribute -- Get the next attribute in result
- ldap_next_entry -- Get next result entry
- ldap_next_reference -- Get next reference
- ldap_parse_reference -- Extract information from reference entry
- ldap_parse_result -- Extract information from result
- ldap_read -- Read an entry
- ldap_rename -- Modify the name of an entry
- ldap_sasl_bind -- Bind to LDAP directory using SASL
- ldap_search -- Search LDAP tree
- ldap_set_option -- Set the value of the given option
- ldap_set_rebind_proc -- Set a callback function to do re-binds on referral chasing
- ldap_sort -- Sort LDAP result entries
- ldap_start_tls -- Start TLS
- ldap_t61_to_8859 -- Translate t61 characters to 8859 characters
- ldap_unbind -- Unbind from LDAP directory
| Poprzedni | Spis treści | Następny |
| kadm5_modify_principal | Początek rozdziału | ldap_8859_to_t61 |
Lista dyskusyjna:
* 64-bitowy (x64) procesor o szybko¶ci 1 GHz,
* 1 GB pamiêci systemowe
* Dysk twardy o pojemno¶ci 40 GB i przynajmniej 15 GB wolnego miejsca
* Obs³uga grafiki DirectX 9 z:
- sterownikiem WDDM
- 128 MB pamiêci na karcie graficznej (minimum)
- sprzêtow± obs³ug± funkcji Pixel Shader 2.0
- obs³ug± 32-bitowej palety kolorów
zalecane wymagania Windows Vista posiadam:
AMD Athlon x2 x64 3600+ ( mo¿na by podkrêciæ )
GF7950GT 512mb
Geil 1GB DDr 2 PC800 ultra dual 512x512, dokupuje za tydzieñ 2GB tego samego ramu tez dual i ultra tylko 1024x1024 (3GB)
my¶lê, ¿e to stykanie na viste ale mam trzy pytania czy bêdzie du¿a ró¿nica miêdzy systemem 64 bit a 32? i gdzie ja zauwa¿ê w gra tez czy nie?
Czy je¶li ona wymaga np 128mb na karcie graficznej to czy przy w³±czeniu gry np zostanie mi tylko 384 bo vista zje 128
albo w przypadku procesora gdzie mam ledwo 2Ghz to vista zje 1 i dal gry zostanie 1?
Czy w grach bêdzie strasznie du¿a ró¿nica co do XP 32? ( chodzi mi o spadek wydajno¶ci )
jeszcze jedno znalaz³em na http://www.xp.net.pl/art/vista_opt.html optymalizacje visty czy to du¿o daje czy raczej nie op³aca siê w to bawiæ?
witajcie ponownie
ostatnio grzebie po sieci i znalaz³em co¶ co mnie zainteresowa³o.
Firma Dell ktorej przedstawiaæ nie trzeba u¿ywa w swoich XPS ( laptopach stworzonych dla graczy) karty typu
nVidia FX770M Graphics Card (with 512MB dedicated memory)
2 x 256MB nVidia GeForce 8700M GT SLI (Total 512MB)
Nvidia Quadro 2500M 512MB
wszystkie maja po 512 MB grafike ale która z tych jest lepsza i jaka jest ich wydajno¶æ w porównaniu do GF 8600 GS/GT czy GF 9500 GS GF 9600 GT ??
Mam problem, bo ¶ci±gn±³em pewien program w kilku czê¶ciach jako pliki .iso zapakowane w WinRarze. Domy¶lam siê, ¿e maj± one stworzyæ jeden plik instalacyjny. Pierwszy raz mam do czynienia z takimi plikami, czyta³em, ¿e u¿ywa siê programów do nagrywania p³yt ale nie wiem o co dok³adnie chodzi. U¿ywam programu Nero je¶li to pomo¿e. z góry dziêki za ka¿d± odpowied¼.
Czesc!
Pisze do Was z prosba o pomoc. Kupilem wczoraj nowy dysk do swojego kompa, jest to dysk Seagate SATA, chcialem by byl on dyskiem dodatkowym. Do tej pory mialem i mam dalej dysk Seagate ale ATA. System zostawilem bez zmian na starym dysku czyli na ATA. Przestawilem w BIOSIE obsluge ATA + SATA i niby wszystko dziala, system widzi oba dyski (mam Windowsa Xp SP2) ale za to przestal widziec napedy (DVD i CD-ROM). Dodam ze zadnych kabli od napedow nie odlaczalem. Mam wrazenie ze musze cos jeszcze zrobic w BIOSIE ale niestety nie wiem co i tutaj moja prosba o pomoc.
Posiadam kartê graficzna firmy PNY Geforce 9600 GT OC(http://pny.eu/products.php?section=product...p;productid=241). Podczas instalacji sterowników, pasek instalatora dochodzi do polowy, staje, po czym ekran robi siê czarny a w lewym górnym rogu miga kursor (znaczy taka kreseczka _ ).
Mój sprzêt:
PLYTA: ASUS P5Q
RAM: Geil 2Gb DDR2 1066
PROCESOR: INTEL CORE 2 QUAD 9550
ZASILACZ: CHIEFTEC 560W
Próbowa³em ju¿ 3 ró¿nych sterowników, nawet robi³em update biosa i dalej jest to samo
-
Odnośniki:
-
Wybrane strony:
filter
xml
expect
soap
magicquotes
-
Odliczanie