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 05-09-2007, 15:35
DrMeissner
 Newbie
Links : Onlinestatus : DrMeissner ist offline
Registriert seit: Sep 2007
Beiträge: 13
DrMeissner ist zur Zeit noch ein unbeschriebenes Blatt
Standard per PHP 5 User per LDAP dem AD hinufügen?

Hallo!
Ich würde gerne über PHP und LDAP User ins AD meines W2k3 Servers hinzufügen. Auslesen klappt ohne Probleme, aber mit ldap_add hab ich so meine Probleme.

Hat das jemand schonmal versucht? Hats bei wem geklappt? Für Ideen wäre ich sehr dankbar!

Mit freundlichen Grüßen, DrMeissner
Mit Zitat antworten
  #2 (permalink)  
Alt 05-09-2007, 15:43
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

wo ist das problem? wo ist dein code?
Mit Zitat antworten
  #3 (permalink)  
Alt 05-09-2007, 15:56
DrMeissner
 Newbie
Links : Onlinestatus : DrMeissner ist offline
Registriert seit: Sep 2007
Beiträge: 13
DrMeissner ist zur Zeit noch ein unbeschriebenes Blatt
Standard

An den Code komm ich gerade leider nicht, bin gerade arbeiten.

Ich habe mich mal durch die Hilfe gehangelt, und versucht das Beispiel dort umzusetzen.

bool ldap_add ( resource $Verbindungs-Kennung, string $dn, array $eintrag )

resource $Verbindungs-Kennung ist kein Problem, beim String $dn habe ich immer die Daten aus dem Beispiel genommen:

"cn=root, o=Meine Firma, c=DE"

Beim array$eintrag Daten in Form von diesem hier:

$info["cn"]="Hans Mustermann";
$info["sn"]="Mustermann";
$info["mail"]="MustermannH@firma.de";
$info["objectclass"]="person";


Ich bin mir nicht ganz im klaren, was cn, o, etc. auf meinem Windowsserver sind. Eventuell gebe ich auch den DN falsch an.

Google hilt mir da leider nicht weiter. Hat das schon wer gemacht? Ein Beispiel anhand einer Windowsservers mit kurzer Beschreibung vom Aufbau des ActiveDirectory wäre super!

Hab gestern stundenlang dran gearbeiten und bin jetzt ein klein wenig frustiert
Mit Zitat antworten
  #4 (permalink)  
Alt 06-09-2007, 00:04
DrMeissner
 Newbie
Links : Onlinestatus : DrMeissner ist offline
Registriert seit: Sep 2007
Beiträge: 13
DrMeissner ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hier der klägliche Versuch:

<?php

echo "<html><head>";
echo "<title>Test User hinzufügen</title>";
echo "</head><body>";

$server = "ldap://192.168.172.240";
$serverport = 389;
$benutzer = "Administrator@meyer.schmidt";
$passwort = "osaft";

$ds = ldap_connect( $server, $serverport ) or die( "keine Verbindung zu {$server} Server");

ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ds, LDAP_OPT_REFERRALS, 0);

$bind=ldap_bind($ds, $benutzer, $passwort);

$neueruser["UID"]="Hans Mustermann";
$neueruser["CN"]="Hans Mustermann";
$bind=ldap_add ( $ds, "OU=Benutzer,DC=meyer,DC=schmidt", $neueruser );

echo "</body></html>";
?>


Ich bin am Verzweifeln
Mit Zitat antworten
  #5 (permalink)  
Alt 06-09-2007, 01:05
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

was gibt ldap_add() denn zurück? versuchs mit dem beispiel unter
http://de.php.net/manual/en/function.ldap-add.php#57300
Mit Zitat antworten
  #6 (permalink)  
Alt 06-09-2007, 20:46
DrMeissner
 Newbie
Links : Onlinestatus : DrMeissner ist offline
Registriert seit: Sep 2007
Beiträge: 13
DrMeissner ist zur Zeit noch ein unbeschriebenes Blatt
Standard

he penizillin!
erstmal vielen Dank für deine Antwort!

Ich habe mal den Code anhand deines Beispieles abgeändert:
PHP-Code:
<?php
$auth_user 
"Administrator@schmidt.meyer";
$auth_pass "osaft";

ldap_set_option($connectLDAP_OPT_PROTOCOL_VERSION3);
$ldap_conn ldap_connect("ldap:\\192.168.172.240");
$bind ldap_bind($ldap_conn$auth_user$auth_pass)

$member_array = array();
$member_array[0] = "cn=user1,cn=Users,dc=schmidt,dc=meyer";
$member_array[1] = "cn=administrator,cn=Users,dc=schmidt,dc=meyer";

$addgroup_ad["cn"] = "testgroup";
$addgroup_ad["samaccountname"] = "testgroup";
$addgroup_ad["objectClass"] = "Group";
$addgroup_ad["description"] = "Yep just a test.";
$addgroup_ad["member"] = $member_array;
$base_dn "cn=testgroup,cn=Users,DC=schmidt,DC=meyer";
ldap_add($ldap_conn,$base_dn,$addgroup_ad);
?>
Als Fehler erscheint folgendes:

Parse error: syntax error, unexpected T_VARIABLE in C:\Programme\xampp\htdocs\ldap_add2.php on line 11

Und das ist die Zeile 11:

PHP-Code:
$member_array = array(); 
Was habe ich falsch gemacht?

Mit freundlichem Gruß! DrMeissner
Mit Zitat antworten
  #7 (permalink)  
Alt 06-09-2007, 21:05
ministry
 PHP Junior
Links : Onlinestatus : ministry ist offline
Registriert seit: Jun 2006
Ort: KI / KA
Beiträge: 965
ministry ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Die Fehlermeldung besagt, dass da eine unerwartete Variable steht. Unerwartet, weil was anderes erwartet wird.

Suchst du ein bisschen davor, was da wohl fehlen könnte und daher so dringend erwartet wird...
__________________
ich glaube
Mit Zitat antworten
  #8 (permalink)  
Alt 07-09-2007, 01:58
DrMeissner
 Newbie
Links : Onlinestatus : DrMeissner ist offline
Registriert seit: Sep 2007
Beiträge: 13
DrMeissner ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Okay, das ist mir nun peinlich. Ich habs jedenfalls von alleine gefunden

Leider habe ich nun einen weiteren Fehler bei folgendem Code:

PHP-Code:
<?php
$auth_user 
"administrator@meyer.schmidt";
$auth_pass "osaft";
$ldaphost "ldap://192.168.172.240";
$ldapport "389";

$ldap_conn ldap_connect($ldaphost$ldapport)
          or die(
"Could not connect to $ldaphost");

ldap_set_option($ldap_connLDAP_OPT_PROTOCOL_VERSION3);
ldap_set_option($ldap_connLDAP_OPT_REFERRALS0);

$bind ldap_bind($ldap_conn$auth_user$auth_pass);

$member_array = array();
$member_array[0] = "cn=user1,cn=Users,dc=meyer,dc=schmidt";
$member_array[1] = "cn=administrator,cn=Users,dc=meyer,dc=schmidt";

$addgroup_ad["cn"] = "testgroup";
$addgroup_ad["samaccountname"] = "testgroup";
$addgroup_ad["objectClass"] = "Group";
$addgroup_ad["description"] = "Yep just a test.";
$addgroup_ad["member"] = $member_array;
$base_dn "cn=testgroup,cn=Users,DC=meyer,DC=schmidt";
ldap_add($ldap_conn,$base_dn,$addgroup_ad);
?>
Fehler:

Fatal error: Call to undefined function ldap_connect() in C:\Programme\xampp\htdocs\ldap_add2.php on line 7


Ich hoffe ich nerve noch nicht zusehr, aber ich komme absolut nicht weiter, obwohl ich mir schon etliche Male die Syntax von ldap_connect durchgelesen und andere Beispiele getestet habe.
Vielen Dank fürs Lesen!

Mit freundlichem Gruß, DrMeissner

Geändert von DrMeissner (07-09-2007 um 02:02 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 07-09-2007, 09:51
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

mod_ldap aktivieren!
Mit Zitat antworten
  #10 (permalink)  
Alt 07-09-2007, 21:04
DrMeissner
 Newbie
Links : Onlinestatus : DrMeissner ist offline
Registriert seit: Sep 2007
Beiträge: 13
DrMeissner ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das Einzige was ich dazu finde ist:
PHP-Code:
ldap_mod_add 
Ich habe einfach ldap_add mit diesem Befehl ersetzt. Da erscheint aber der gleiche Fehler.

Oder meintest du etwas anderes?

Ich wünsch ein schönes Wochenende!
Mit Zitat antworten
  #11 (permalink)  
Alt 07-09-2007, 22:09
tontechniker
 PHP Senior
Links : Onlinestatus : tontechniker ist offline
Registriert seit: Jul 2005
Beiträge: 1.972
tontechniker ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Du solltes die PHP Extension mod_ldap aktivieren - ansonsten stehen die Funktionen garnicht zur Verfügung.
__________________
Die Regeln | rtfm | register_globals | strings | SQL-Injections | []
Mit Zitat antworten
  #12 (permalink)  
Alt 09-09-2007, 18:27
DrMeissner
 Newbie
Links : Onlinestatus : DrMeissner ist offline
Registriert seit: Sep 2007
Beiträge: 13
DrMeissner ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was ich nun gemacht hab:

Auf dem Server in der PHP.ini das Simikolon vor extension=php_ldap.dll weggenommen, auf der Workstation das Selbe.

War das richtig? Es kommt jedenfalls noch der gleiche Fehler :-/

Mit freundlichem Gruß! DrMeissner
Mit Zitat antworten
  #13 (permalink)  
Alt 09-09-2007, 19:35
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Hast du den Webserver neu gestartet?
Mit Zitat antworten
  #14 (permalink)  
Alt 09-09-2007, 19:55
DrMeissner
 Newbie
Links : Onlinestatus : DrMeissner ist offline
Registriert seit: Sep 2007
Beiträge: 13
DrMeissner ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ja, mehrmals. Hier ist nochmal das Script:

PHP-Code:
<?php

echo "<html><head>";
echo 
"<title>LDAP-ADD Test 2</title>";
echo 
"</head><body>";

$auth_user "administrator@meyer.schmidt";
$auth_pass "osaft";
$ldaphost "ldap://192.168.172.240";
$ldapport "389";

$ldap_conn ldap_connect($ldaphost$ldapport)
          or die(
"Could not connect to $ldaphost");

ldap_set_option($ldap_connLDAP_OPT_PROTOCOL_VERSION3);
ldap_set_option($ldap_connLDAP_OPT_REFERRALS0);

$bind ldap_bind($ldap_conn$auth_user$auth_pass);

$member_array = array();
$member_array[0] = "cn=user1,cn=Users,dc=meyer,dc=schmidt";
$member_array[1] = "cn=administrator,cn=Users,dc=meyer,dc=schmidt";

$addgroup_ad["cn"] = "testgroup";
$addgroup_ad["samaccountname"] = "testgroup";
$addgroup_ad["objectClass"] = "Group";
$addgroup_ad["description"] = "Yep just a test.";
$addgroup_ad["member"] = $member_array;
$base_dn "cn=testgroup,cn=Users,DC=meyer,DC=schmidt";
$ldap_conn ldap_add($ldap_conn,$base_dn,$addgroup_ad);

echo 
"</body></html>";

?>
Kann mir wer vielleicht seine Kontaktdaten von irgendeinem Instant Messenger zukommen lassen? Die Sache lässt mich echt verzweifeln
Mit Zitat antworten
  #15 (permalink)  
Alt 09-09-2007, 20:15
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Was ist denn jetzt eigentlich der Stand? Immernoch undefined function?
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

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

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


 

Aktuelle PHP Scripte

WeltExplorer v1.0

WeltExplorer v1.0 ist ein Dateimanager zum Browsen und Operieren im Dateisystem. Bei installiertem cURL können Ordner und Dateien zu entfernten FTP-Servern hochgeladen bzw. von diesen heruntergeladen werden, etwa zum Erstellen von Backups oder Mirrorsites

06.02.2019 weltvolk | Kategorie: PHP/ File
PG Job Site Pro

> Job Site Pro - web-basiertes Programm, auf PHP/MySQL für Erstellung der funktionellen Job Board Site gebaut. Das hat erweitertes Management-System für Arbeitssuchenden und Arbeitgeber und kann für bestimmte Länder, Regionen oder einfach generelle Job Si

05.02.2019 submit@ | Kategorie: PHP/ Management
ModuleStudio ansehen ModuleStudio

Modellgetriebene Entwicklung von Erweiterungen für das Open Source Framework Zikula.

15.01.2019 Guite | Kategorie: PHP ENTWICKLUNGSUMGEBUNG
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:02 Uhr.