Top-Themen

Aktuelle Themen (A bis Z)

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

Frage Entwicklung PHP

GELÖST

ldap-search filter problem bei mehreren kriterien

Mitglied: risker

risker (Level 1) - Jetzt verbinden

08.10.2009, aktualisiert 14:22 Uhr, 6263 Aufrufe

Hallo,

Ich baue momentan an einer kleinen Telefonliste in PHP.

Diese soll per Filter alle Kontakte+User auslesen, welche auch eine Telephonnummer haben, außerdem sollen Einträge mit dem Namen Schule nicht erwähnt werden.

Folgendes hat ich mir überlegt (erstmal nur Telefonnummer + Schule

01.
<?php 
02.
/* 
03.
	Author: - 
04.
	Datum: 08.10.2009 
05.
	Funktion: Aufbau eines neuen Telefonverzeichnisses auf Basis des ADs 
06.
*/ 
07.
	// Allgemeine Variablen, welche nötig für den LDAP Zugriff sind 
08.
	$ldap_server = servername'; 
09.
	$ldap_user = 'username'; 
10.
	$ldap_password = 'passwort'; 
11.
	$ldap_basedn = 'dn'; 
12.
	// Nach was soll gesucht werden? 
13.
	#$filter = "(|(objectClass=contact)(objectClass=user))"; 
14.
	$filter = "(&(!displayName=*Schule*)(telephoneNumber=*))"; 
15.
	// Verbinde mit Ldap Server 
16.
	$ds = ldap_connect($ldap_server) or die (ldap_error($ds)); 
17.
		// Angeblich nötig für den Zugriff auf ein Win2003 AD 
18.
		ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);  
19.
		ldap_set_option($ds, LDAP_OPT_REFERRALS, 0);  
20.
		// Wenn Verbindung erfolgreich: 
21.
		if($ds){ 
22.
			$ldapbind = @ldap_bind($ds,$ldap_user,$ldap_password) or die (ldap_error($ds)); 
23.
			$search = ldap_search($ds,$ldap_basedn,$filter) or die (ldap_error($ds)); 
24.
			$data = ldap_get_entries($ds,$search); 
25.
			$anzahl = ldap_count_entries($ds,$search); 
26.
			echo "Es gibt ".$anzahl." Einträge im AD"; 
27.
			 
28.
			for ($i=0; $i<$anzahl;$i++) { 
29.
				$ergebnis[$i]["sn"] = utf8_decode($data[$i]["sn"][0]); 
30.
				$ergebnis[$i]["givenname"] = utf8_decode($data[$i]["givenname"][0]); 
31.
				$ergebnis[$i]["telephoneNumber"] = utf8_decode($data[$i]["telephonenumber"][0]); 
32.
				$ergebnis[$i]["physicalDeliveryOfficeName"] = utf8_decode($data[$i]["physicaldeliveryofficename"][0]); 
33.
34.
			 
35.
		}else{ 
36.
			echo "Fehler!"; 
37.
38.
		 
39.
		 
40.
echo "<html>"; 
41.
echo "<table border=0>"; 
42.
for ($i=0; $i<$anzahl; $i++) { 
43.
    echo "<tr>"; 
44.
    echo "<td width=200>" . $ergebnis[$i]["sn"] . ", ".$ergebnis[$i]["givenname"]. "</td>"; 
45.
    echo "<td width=200>" . $ergebnis[$i]["telephoneNumber"] . "</td>"; 
46.
    echo "<td width=150>" . $ergebnis[$i]["physicalDeliveryOfficeName"] . "</td>"; 
47.
48.
echo "</table>"; 
49.
 
50.
echo "</body></html>"; 
51.
		 
52.
	 
53.
?>
Das funktioniert allerdings nur, wenn ich den Filter auf (telephoneNumer=*) setze, sonst krieg ich immer die Fehlermeldung: Bad Search Filter.


Hat jemand eine Idee für mich? Habe mich soweit ich das sehen kann, an diese Netscape SDK Discovery und self-adsi gehalten.


Grüße
Risker


Edit: Mir hat bei (!displayname=Schule) ein Klammersatz gefehlt. (!(displayname=schule))
Ähnliche Inhalte
Microsoft Office
VBA: nach ausgewählten Kriterien filtern
Frage von BerndVorwerkMicrosoft Office7 Kommentare

Hallo an alle. Auch auf die Gefahr hin, dass ich euch so langsam auf die Nerven gehe, aber ich ...

Microsoft Office
Filter im Access Formular mit mehreren Kriterien belegen..
Frage von diaaryMicrosoft Office

Hallo liebe Leute! Ich habe ein Problem mit dem Filter in einem Formular in Access-DB. Ich möchte gerne an ...

Microsoft Office
Sverweis mit mehreren Kriterien
gelöst Frage von Florian86Microsoft Office8 Kommentare

Hallo, ich möchte aus einem 2. Tabellenblatt mit Sverweis und 2 Kriterien einen bestimmten Wert ziehen. Die folgende Formel ...

Datenbanken
SQL - Abfragen - Mehrere Tabellen - Problem WHERE-Filter
gelöst Frage von Andy1987Datenbanken12 Kommentare

Guten Morgen, ich muss mich derzeit mit SQL-Abfragen rumschlagen, um unsere Inventarisierung etwas Übersichtlicher zu gestallten. Mein Problem ist ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 1 TagLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 2 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 2 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 2 TagenSicherheit10 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
E-Mail
Erfahrungen mit hMailServer gesucht
Frage von it-fraggleE-Mail10 Kommentare

Hallo, meine neue Stelle möchte einen eigenen Mailserver. Ich als Linuxkind war direkt geistig mit Postfix dabei. Leider wollen ...

Firewall
Penetrationstester-Labor - Firewalls
Frage von Oli-nuxFirewall9 Kommentare

Mich würde interessieren warum man beim Einrichten eines Penetrationstester-Labor (VMs) die Firewall der Systeme deaktivieren soll? Hat das nur ...

Entwicklung
VBS: alle PDF-Dateien in einem Ordner gleichzeitig öffnen
gelöst Frage von JuweeeEntwicklung9 Kommentare

Hallo, ich habe in deiner Ordnerstruktur (.\Tagesberichte\xx.18\) mehrere dynamische PDF-Formulare (mit LCD erstellt). Die Berichtsformulare sind im Layout alle ...

Netzwerkgrundlagen
IPv6 Inter-VLAN Routing
gelöst Frage von clSchakNetzwerkgrundlagen7 Kommentare

Hi ich befasse mich gerade mit der Implementierung von IPv6 was bisher (in einem VLAN) korrekt funktioniert inkl. DNS ...