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
GELÖST

ldap-search filter problem bei mehreren kriterien

Frage Entwicklung PHP

Mitglied: risker

risker (Level 1) - Jetzt verbinden

08.10.2009, aktualisiert 14:22 Uhr, 6214 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))
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Outlook & Mail
gelöst Outlook 2010 E-Mail Filter ohne Windows Search Dienst ? (4)

Frage von danieluk15 zum Thema Outlook & Mail ...

Multimedia & Zubehör
gelöst BENQ Beamer Fernbedingung Frequenz Problem (4)

Frage von xbast1x zum Thema Multimedia & Zubehör ...

Windows Server
Google Chrome Web Store Problem auf Terminal Farm

Frage von dakoerry zum Thema Windows Server ...

Multimedia & Zubehör
gelöst Problem: DVI zu VGA (8)

Frage von Protected zum Thema Multimedia & Zubehör ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...