echo 'Hallo Zusammen';
Ich sitze grade an einem Problem bez. der sortierten Ausgabe meiner FOR Schleife. Die gespeicherten Werte sind in einem Array aus LDAP. Mit ldap_sort habe ich nach einem Kriterium die Ausgabe sortieren können. Jedoch habe ich drei weitere Kriterien nach denen ich sortieren will. Hier mal der Code;
Nun würde ich gerne nach den Werten 'postofficebox', 'physicaldeliveryofficename' und 'company' zusätzlich sortieren.
Muss ich die Werte vorher sortiert haben oder kann ich die Ausgabe auch im nachhinein manipulieren, welcher Weg ist da am besten geeignet ?
Grüße
re3no
Ich sitze grade an einem Problem bez. der sortierten Ausgabe meiner FOR Schleife. Die gespeicherten Werte sind in einem Array aus LDAP. Mit ldap_sort habe ich nach einem Kriterium die Ausgabe sortieren können. Jedoch habe ich drei weitere Kriterien nach denen ich sortieren will. Hier mal der Code;
PHP-Code:
$ds=ldap_connect("0.0.0.0");
$r=ldap_bind($ds);
$dn = "DC=TEST,DC=de";
$werte = array( "ou", "sn", "mail", "thumbnailphoto", "cn", "title", "description", "department", "manager", "mobile", "facsimiletelephonenumber", "telephonenumber", "wwwhomepage", "l", "postofficebox", "physicaldeliveryofficename", "company", "streetaddress", "st", "postalcode", "co");
// Suchen des Filtereinstellungen
$sr=ldap_search($ds, $dn, $filter, $werte);
// Sortierung der Objekte nach Ort
ldap_sort($ds, $sr, 'l');
// Objekte holen
$info = ldap_get_entries($ds, $sr);
PHP-Code:
echo "<table class='zebra' border='0'>";
echo "<th><h2>Bild</h2></th><th><h2>Kontakt</h2></th><th><h2>Kommunikation</h2></th><th><h2>Anschrift</h2></th>";
for ($i=0; $i<$info["count"]; $i++) {
echo '<tr style="height:200px;">';
echo '<td align="center" style="padding: 15px;">';
echo '<div class="Bild">';
// Aufarbeitung Bild aus dem AD
$bild = $info[$i]["thumbnailphoto"][0];
echo '<img src="data:image/jpeg;base64,' . base64_encode($bild) . '"/>';
echo '</div></td>';
echo '<td>';
echo "<h1>". $info[$i]["cn"][0] ."</h1>";
echo "Position: ". $info[$i]["title"][0] ."<br />";
echo "Bereich: ". $info[$i]["description"][0] ."<br />";
echo "Abteilung: ". $info[$i]["department"][0] ."<br />";
// Modifikation String Vorgesetzter aus dem AD
$manager= $info[$i]["manager"][0];
$string1 = str_replace("CN=", "", $manager);
$string2 = stripslashes($string1);
echo "Vorgesetzter: ";
echo strstr($string2, ',OU=', true);
echo '</td>';
echo '<td>';
if($info[$i]["mail"][0] != NULL){
echo "<div class='mode'><div class='modelinks'><img src='icon/email.png' width='32' height='32'></div> <div class='moderechts'><small><a href='mailto:". $info[$i]["mail"][0] ."'> ". $info[$i]["mail"][0] ."</small></a></div></div>";}
else{echo "";}
if($info[$i]["mobile"][0] != NULL){
echo "<div class='mode'><div class='modelinks'><img src='icon/mobil.png' width='32' height='32'></div> <div class='moderechts'> ". $info[$i]["mobile"][0] ."</div></div>";}
else{echo "";}
if($info[$i]["facsimiletelephonenumber"][0] != NULL){
echo "<div class='mode'><div class='modelinks'><img src='icon/fax.png' width='32' height='32'></div> <div class='moderechts'> ". $info[$i]["facsimiletelephonenumber"][0] ."</div></div>";}
else{echo "";}
if($info[$i]["telephonenumber"][0] != NULL){
echo "<div class='mode'><div class='modelinks'><img src='icon/festnetz.png' width='32' height='32'></div> <div class='moderechts'> ". $info[$i]["telephonenumber"][0] ."</div></div>";}
else{echo "";}
//if($info[$i]["wwwhomepage"][0] != NULL){
// echo "<div class='mode'><div class='modelinks'><img src='icon/www.png' width='32' height='32'></div> <div class='moderechts'><small><a href='http://". $info[$i]["wwwhomepage"][0] ."' target='blank'> ". $info[$i]["wwwhomepage"][0] ."</a></small></div></div>";}
//else{echo "";}
echo '</td>';
echo '<td>';
echo "<b>Stadt: ". $info[$i]["l"][0] ."</b><br />";
echo "<b>Haus: ". $info[$i]["postofficebox"][0] ."</b><br />";
echo "<b>Raum: ". $info[$i]["physicaldeliveryofficename"][0] ."</b><br />";
echo "Firma: ". $info[$i]["company"][0] ."<br />";
echo "Strasse: ". $info[$i]["streetaddress"][0] ."<br />";
//echo "Bundesland: ". $info[$i]["st"][0] ."<br />";
echo "Postleitzahl: ". $info[$i]["postalcode"][0] ."<br />";
//echo "Land: ". $info[$i]["co"][0] ."<br />";
echo '</td>';
echo '</tr>';
}
echo "</table>";
Muss ich die Werte vorher sortiert haben oder kann ich die Ausgabe auch im nachhinein manipulieren, welcher Weg ist da am besten geeignet ?
Grüße
re3no
Kommentar