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

Benutzer nach PHP LDAP Abfrage sortieren

Mitglied: Bayano

Bayano (Level 1) - Jetzt verbinden

27.04.2007, aktualisiert 04.05.2007, 9483 Aufrufe, 10 Kommentare

Hallo,

ich habe ein kleines Problem, ich habe über ein PHP-Script alle Benutzer aus dem LDAP abgefragt und in ein SELECT-Feld gepackt, das Problem ist, das die Einträge nicht sortiert sind. Kann mir jemand helfen?

Das Eintragen in das SELECT-Feld sieht so aus:

<select name="Benutzer" size="1">
<?php
$anzahl = ldap_count_entries($connectid,$search);
for ($i=0; $i<$anzahl; $i++) {

$name = $result[$i]["cn"][0];

echo '<option>'.$name.'</option>';
}
?>
</select>

MFG
Sascha
Mitglied: SteinBeiser
27.04.2007 um 10:09 Uhr
Nicht sofort in select reinhauen sonder erst in ein array, dieses sortieren und dann select aufbauen.
Bitte warten ..
Mitglied: Bayano
27.04.2007 um 11:58 Uhr
Danke für den Tipp, kannst du mir vielleicht auch mal ein Code-Beispiel geben? Weil mit Array´s und dem Sortieren kenne ich mich nicht so gut aus. Ich würde nur den Bubblesort kennen, aber der ist bestimmt zu langsam, das sind ca 2000 User.
Bitte warten ..
Mitglied: SteinBeiser
27.04.2007 um 12:09 Uhr
01.
//leeres array anlegen: 
02.
 $arr = array(); 
03.
 
04.
//array füttern: 
05.
array_push( $arr, $entry ); 
06.
  
07.
//array sortieren: 
08.
asort( $arr );
selfPHP und selfHTML sind für sowas ne grosse hilfe.
Bitte warten ..
Mitglied: Bayano
30.04.2007 um 15:14 Uhr
Also das hat jetzt alles bei mir geklappt, mit print_r($array) kan ich auch den Sortieren Array ausgeben. Allerdings wenn ich dein sortieren Array in einer Liste ausgeben will klappt das nicht.

Mein Programmcode sieht so aus:
01.
for ($j=0; $j<$anzahl; $j++)  
02.
03.
  echo "<option>".$array[$j]."</option>";                    
04.
}
Aber so gibt er mir nicht die Sortiete Liste aus, sondern die unsortierte. Kann mir jemand helfen?
Bitte warten ..
Mitglied: Dani
30.04.2007 um 16:35 Uhr
Hi ihr Beide,
ich habe mir erlaubt, eure beiden Quellcodes in ein einen Codebock zustecken. So dass es übersichtlich aussieht und optisch natürlich auch.

Zu deinem Problem:
Poste doch ein bisschen mehr als deine for - Schleife, denn der Fehler muss vorher eingebaut sein.


Gruß
Dani
Bitte warten ..
Mitglied: Bayano
03.05.2007 um 07:53 Uhr
Ok, dann poste ich mal meine Quellcode:

01.
 
02.
 
03.
                  $basedn = "CN=Users,DC=domain,DC=loc"
04.
                  $server = "servername"
05.
                  $username = "user"
06.
                  $password = "password"
07.
                  $ldap_port = "389"
08.
                  $filter = "(&(|(objectClass=user))(objectCategory=person)(cn=*))"
09.
?> 
10.
     
11.
<?php 
12.
                  $connectid = @ldap_connect($server)or die("Keine Verbindung zum LDAP server möglich."); 
13.
?> 
14.
     
15.
<?php 
16.
                  $binding = @ldap_bind($connectid,$username,$password) or die("Fehler beim Anmelden des Benutzers."); 
17.
?> 
18.
     
19.
<?php 
20.
                  // AD auslesen 
21.
                  $search = @ldap_search($connectid,$basedn,$filter); 
22.
                  $result = ldap_get_entries($connectid,$search); 
23.
?> 
24.
 
25.
<?php 
26.
                  $anzahl = ldap_count_entries($connectid,$search); 
27.
                  $arr = array(); 
28.
                  for ($i=0; $i<$anzahl; $i++) { 
29.
                     $name = $result[$i]["cn"][0]; 
30.
                      
31.
                     array_push( $arr,$name ); 
32.
33.
                  asort($arr); 
34.
?>                  
35.
                  <select name="user" size="1">   
36.
<?php                                  
37.
                  for ($j=0; $j<$anzahl; $j++) { 
38.
                    echo '<option>'.$arr[$j].'</option>'
39.
40.
?>                   
41.
                  </select> 
42.
 

Das ist es. Ich hoffe ihr könnt mir dabei weiterhelfen.
Bitte warten ..
Mitglied: SteinBeiser
03.05.2007 um 13:43 Uhr
sorry aber nachdem ich meine serverdaten fürs connect eingetragen hatte
funktioniert das script bis auf ein "?>" zuviel.
Bitte warten ..
Mitglied: Bayano
03.05.2007 um 14:58 Uhr
Hmm, komisch.

bei gibt er mit dem Befehl "print_r(arr);" auch die richtige Sortierung aus. Allerdings mit der Schleife wo ich die Listebox/Combobox fülle, gibt er mir immer den unsortierten Array aus.
Ich vermute das der Array nur temporär sortiert wird, und nicht die Indexwerte geändert werden. Und da ich in der Schleife über die Indexwerte gehe geht das so nicht.
Kann das möglich sein?
Ich weiss nämlich so langsam nicht mehr weiter.
Bitte warten ..
Mitglied: SteinBeiser
03.05.2007 um 16:16 Uhr
sorry bin mit blidheit geschlagen bei mich auch unsortiert.
Mit folgender schleife wirds sortiert ausgegeben.

foreach( $arr as $j ) {
echo '<option>'.$j.'</option>';
}
Bitte warten ..
Mitglied: Bayano
04.05.2007 um 10:53 Uhr
Besten dank, bei mir funktioniert es jetzt auch.
Bitte warten ..
Ähnliche Inhalte
PHP
PHP LDAP Login Gruppen Abfrage
gelöst Frage von schneerunzelPHP7 Kommentare

Hallo Zusammen ich habe dieses PHP Script: Dieses Script stammt von einem anderen User aus diesem Forum Unschwer zu ...

Windows Server
LDAP in PHP
Frage von pipoomaWindows Server10 Kommentare

Halloo zusammen, ich habe Aufgabe von meinem Chef bekommt und zwar Single Sign-On. Wir entwickeln im Haus einen Portal ...

PHP
PHP LDAP Login
gelöst Frage von schneerunzelPHP11 Kommentare

Hallo Zusammen, ich brauche eine Website auf der man sich mit seinen LDAP Account anmelden kann und dann eine ...

Exchange Server
Exchange 2010 LDAP Abfrage
gelöst Frage von fragenumfragenExchange Server3 Kommentare

Hallo, ich versuche gerade mit den wenigen Kenntnissen die ich habe eine LDAP Abfrage zu basteln. So sieht die ...

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
Batch & Shell
Meltdown Microsoft Prüf Script - .zip Datei leider leer
gelöst Frage von MasterBlaster88Batch & Shell13 Kommentare

Hallo zusammen, ich patche gerade unsere Windows Server bzgl. der Meltdown Lücke. Patch vorhanden, Reg Keys gesetzt Um das ...

Batch & Shell
Shell-Skript - Syntax error: Unterminated quoted string
Frage von newit1Batch & Shell13 Kommentare

Hallo Ich schreibe ein Skript das eine CSV-Datei in eine mySQL Datenbank schieben soll. Bekomme nach start des Skrips ...

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 ...

Windows Server
DNS Forwarding an andere Domäne
Frage von detox91Windows Server9 Kommentare

Hallo, für Testzwecke haben wir bei uns eine zweite Windows Domäne (B.local) aufgebaut, welche komplett unabhängig und isoliert der ...