php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 18-04-2008, 13:31
standardX
 Newbie
Links : Onlinestatus : standardX ist offline
Registriert seit: Apr 2008
Beiträge: 2
standardX ist zur Zeit noch ein unbeschriebenes Blatt
Question LDAP, kein Contact zu localhost

Hallo alle zusammen!

Ich versuche seit gestern Nachmittag über PHP auf einen lokalen LDAP-Server zuzugreifen, bisher leider erfolglos.

Dazu habe ich lokal einen ApacheDS installiert. Dazu noch Apache Directory Studio als Directory Browser.
Im Apache Directory Studio habe ich eine Verbindung zum ApacheDS eingerichtet.

Server: localhost
Port: 10389
Bind DN: ou=system,uid=admin
Passwort: secret

Diese Verbindung klappt wunderbar. Ich kann auf das Directory zugreifen und es problemlos über den DS-Browser bedienen.

Nun zum eigentlichen Problem:

Des weiteren habe ich ein PHP-Script geschrieben welches mittels LDAP-Modul auf den ApacheDS zugreift.

PHP-Code:
$ldap_host "LDAP://localhost";
$ldap_port "10389";
$ldap_rdn "ou=system,uid=admin";
$ldap_pwd "secret";

$ldap_connect ldap_connect($ldap_host$ldap_port);
$ldap_bind ldap_bind($ldap_connect$ldap_rdn$ldap_pwd); 
Wenn ich dieses Script ausführe, dann gibt ldap_bind() die Warnung
"can't contact server" zurück.
Soweit ich das durch meine Recherchen mitbekommen habe, wird der tatsächliche Verbindungsaufbau erst beim Aufruf von ldap_bind() durchgeführt, was ich sehr schade finde, da man Anfangs nicht weiß ob der Fehler vom connect oder vom bind kommt.
Wie dem auch sei, die Fehlermeldung sagt ja aus, dass kein Kontakt zum Server hergestellt werden kann.
In anderen Threads und Manuals habe ich gesehen, dass andere Scripte die Protokollangabe in der Hostbezeichnung nicht machen.

anstadt
PHP-Code:
$ldap_host "LDAP://localhost"
PHP-Code:
$ldap_host "localhost"
Wenn ich das so ausführe habe ich immer noch keine Verbindung und bekomme ich die Fehlermeldung "Protocol error".
Wird die Protokollangabe nun benötigt oder nicht?

Da ich immer noch keinen Kontakt zu meinem lokalen ADS bekommen habe, habe ich das PHP-Manual studiert und gelesen, das die PHP DLL's ssleay32.dll und libeay32.dll auf Windowssystemen dem System PATH zugänglich sein müssen.

http://de3.php.net/manual/en/ldap.installation.php

Also hab ich diese in den system32-Ordner kopiert.
Auch danach erhalte ich keine Verbindung zum Server, egal ob mit oder ohne Protokollangabe im Hostname.

Das dritte was ich versucht habe war die Protokollversion mit ldap_set_option() zu setzten. Aber auch das hat nix genützt.

Ich weiß wirklich nicht mehr was ich noch machen soll bzw. woran es liegen könnte warum ich keine Connect bekomme.
Vielleicht hat jemand von euch eine Idee?
Kann natürlich auch sein, dass ich völlig falsch an die Sache rangehe oder dass ich was übersehen habe, dann klärt mich bitte auf!

Jedenfalls bin ich für jede Hilfe dankbar!!!


OS: WindowsXP SP2
WS: XAMPP 1.5.1
DS: ApacheDS 1.0

Geändert von standardX (18-04-2008 um 13:41 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 18-04-2008, 13:46
Poscht
 Newbie
Links : Onlinestatus : Poscht ist offline
Registriert seit: Feb 2007
Beiträge: 31
Poscht ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Versuch es mal so (Auszug aus einer Klasse)
Eine Verbindung war mir auch erst möglich, nachdem ich auf Version 3 umgestellt hatte.

PHP-Code:
$strHost="localhost"// evtl auch localhost:10389
$strPath="ou=system,uid=admin";
$strPassword="secret";

function 
connect($strHost,$strPath,$strPassword)
{
    
$this->_resLDAP=ldap_connect($strHost); 
    
ldap_set_option($this->_resLDAPLDAP_OPT_PROTOCOL_VERSION3);
    if(
ldap_bind($this->_resLDAP$strPath$strPassword))
    {
        return 
$this->_resLDAP;
    }
    else
    {
        
$this->_error(ldap_error($this->_resLDAP),ldap_errno($this->_resLDAP));
        return 
FALSE;
    }
}

// noch die fehlermethode, falls sie interessiert
function _error($strError,$intError)
{
    
$this->strError="";
    
$this->intError=0;
    
$this->strError=$strError;
    
$this->intError=$intError;

Poscht

Geändert von Poscht (18-04-2008 um 13:51 Uhr)
Mit Zitat antworten
  #3 (permalink)  
Alt 18-04-2008, 14:37
standardX
 Newbie
Links : Onlinestatus : standardX ist offline
Registriert seit: Apr 2008
Beiträge: 2
standardX ist zur Zeit noch ein unbeschriebenes Blatt
Standard

WHOOOOHOOOOO

jo, jetz funzts wie Hölle!

Als ich zuvor in meinem Script die Version beim Zugriff geändert habe, muss wohl just in diesem Moment ein Fehler mit der Hostadresse passiert sein, woraufhin ich annahm, dass es nicht an der Protokollversion liegt.
Manchmal braucht man doch einen kleinen Klaps auf den Hinterkopf.

Du hast einen traurigen Mann sehr glücklich gemacht!


WHOOOOHOOOO
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:22 Uhr.