Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

LDAP SEARCH mit PHP - mehr als 1000 Einträge?

Frage Entwicklung PHP

Mitglied: Lousek

Lousek (Level 2) - Jetzt verbinden

28.08.2008, aktualisiert 01.09.2008, 8151 Aufrufe, 1 Kommentar

Hallo Forum.

Leider habe ich weder hier im Forum noch mit Google eine Lösung gefunden.

Also:
Ich will mit PHP und LDAP alle Gruppen (ca. 1500) aus dem AD (W2K3) auslesen. Mein Code:
01.
    // Verbindung mit dem LDAP-Server herstellen 
02.
    $ldap_connect = ldap_connect($ldap_host) or die( "Could not connect!" ); 
03.
    // Beim LDAP-Server authentifizieren 
04.
    ldap_set_option($ldap_connect, LDAP_OPT_PROTOCOL_VERSION, 3) or die ("Could not set ldap protocol"); 
05.
    ldap_set_option($ldap_connect, LDAP_OPT_REFERRALS, 0);  
06.
    ldap_set_option($ldap_connect, LDAP_OPT_SIZELIMIT, 33);   
07.
    $ldap_bind_anonym = ldap_bind($ldap_connect, "*************", "*************"); 
08.
    $filter = "objectclass=group"; 
09.
    $attrb = array("cn"); 
10.
    $ldap_search = ldap_search($ldap_connect, $base_dn, $filter, $attrb, 0, 0) or die ("Could not search!");  
11.
    $ldap_result = ldap_get_entries($ldap_connect, $ldap_search); 
12.
    $counter = 0; 
13.
    foreach ($ldap_result AS $key => $ldap_value) { 
14.
      echo $ldap_value["cn"][0]."<br>"; 
15.
      $counter++; 
16.
17.
    echo $counter;
Jetzt funktioniert das auch soweit ... aber er liest immer nur 1000 Einträge aus. Folgende "Fehlermeldung" kommt:
01.
PHP Warning: ldap_search() [function.ldap-search.html]: Partial search results returned: Sizelimit exceeded. in D:\Inetpub\wwwroot\ad\login.php on line 17 
Nach meinen Google-Forschungen ist die LDAP-Suche serverseitig standard auf 1000 Einträge begrenzt (ich selbst habe im PHP keine Limite gesetzt!) ... jedoch sollte dieses Problem durch
01.
    ldap_set_option($ldap_connect, LDAP_OPT_SIZELIMIT, 33);  
gelöst werden ...
Mit dieser Einstellung sollte ldap_search() immer nur 33 Einträge auslesen und danach die nächschten 33 auslesen usw., also sollten alle Einträge ausgelesen werden können, einfach in 33er-Paketen ...

Jedoch will dies nicht so ...

Hat jemand eine Idee / Lösung?

Greetz, Lousek
Mitglied: seppie
01.09.2008 um 17:16 Uhr
Diese Einstellung kannst du nicht im PHP festlegen. Das Limit mußt du beim Domänen-Server festlegen. Dort ist die "PageSize" auf 1000 Ergebnisse festgelegt, um die Last des Servers zu verringern. Einfach den Wert auf das gewünschte Limit erhöhen.
Bitte warten ..
Ähnliche Inhalte
PHP
PHP PDO Problem (1)

Frage von Tiggr1994 zum Thema PHP ...

Ubuntu
Cron spamt root mit mails zu (php sessionclean) (4)

Frage von tommy1735 zum Thema Ubuntu ...

Sicherheit
Über 1000 deutsche Online-Shops infiziert und angezapft (4)

Link von ashnod zum Thema Sicherheit ...

Windows Netzwerk
gelöst Wie DNS Einträge löschen außer durch flushdns (16)

Frage von f.reisenhauer zum Thema Windows Netzwerk ...

Heiß diskutierte Inhalte
Verschlüsselung & Zertifikate
gelöst Festplattenverschlüsselung im Ausland (13)

Frage von Nicolaas zum Thema Verschlüsselung & Zertifikate ...

Festplatten, SSD, Raid
gelöst Fehlerhafte Blöcke im RAID 10 (12)

Frage von Kojak-LE zum Thema Festplatten, SSD, Raid ...

Batch & Shell
HTML in Batch und Powershell (12)

Frage von michi-ffm zum Thema Batch & Shell ...

Windows Server
gelöst Microsoft-Lizenz CALs und passendes Server-Betriebssystem (12)

Frage von planetIT2016 zum Thema Windows Server ...