Frey
23-08-2005, 09:34
Hallo
Ich soll ein Mitarbeiterverzeichnis in PHP programmieren.
Die Daten der Mitarbeiten stehen in einem LDAP-Verzeichnis.
Das Auslesen der Namen, E-Mails usw geht ohne Probleme. Für jeden Mitarbeiter gibt es noch den Eintrag "jpegPhoto" in dem sein Bild gespeichert wird.
Nach dem Lesen der Referenz bin ich auf die Funktionen "ldap_get_values_len" und "imagecreatefromstring" gestossen und hab dann folgenden Code zusammengebastelt. PHP gibt zwar keine Fehlermeldung aus, aber ein Bild wird leider nicht generiert. Stattdessen werden irgendwelche Sonderzeichen auf der Seite ausgegeben.
<?php
$ds=ldap_connect("$server");
if ($ds)
{
$r=ldap_bind($ds);
$sr=ldap_search($ds,"ou=People,dc=dc1,dc=dc2,dc=de", "sn=Frey*");
if (ldap_get_entries($ds, $sr))
{
$info = ldap_get_entries($ds, $sr);
$eintrag = ldap_first_entry($ds, $sr);
$data = ldap_get_values_len($ds,$eintrag,"jpegphoto");
$im = imagecreatefromstring($data[0]);
if ($im !== false) {
header('Content-Type: image/jpeg');
imagejpeg($im);
}
else {
echo 'Fehler!';
}
}
ldap_close($ds);
}
?>
Ist mein Ansatz richtig und hab ich irgendeine Kleinigkeit übersehen oder ist er komplett falsch ?
Ich soll ein Mitarbeiterverzeichnis in PHP programmieren.
Die Daten der Mitarbeiten stehen in einem LDAP-Verzeichnis.
Das Auslesen der Namen, E-Mails usw geht ohne Probleme. Für jeden Mitarbeiter gibt es noch den Eintrag "jpegPhoto" in dem sein Bild gespeichert wird.
Nach dem Lesen der Referenz bin ich auf die Funktionen "ldap_get_values_len" und "imagecreatefromstring" gestossen und hab dann folgenden Code zusammengebastelt. PHP gibt zwar keine Fehlermeldung aus, aber ein Bild wird leider nicht generiert. Stattdessen werden irgendwelche Sonderzeichen auf der Seite ausgegeben.
<?php
$ds=ldap_connect("$server");
if ($ds)
{
$r=ldap_bind($ds);
$sr=ldap_search($ds,"ou=People,dc=dc1,dc=dc2,dc=de", "sn=Frey*");
if (ldap_get_entries($ds, $sr))
{
$info = ldap_get_entries($ds, $sr);
$eintrag = ldap_first_entry($ds, $sr);
$data = ldap_get_values_len($ds,$eintrag,"jpegphoto");
$im = imagecreatefromstring($data[0]);
if ($im !== false) {
header('Content-Type: image/jpeg');
imagejpeg($im);
}
else {
echo 'Fehler!';
}
}
ldap_close($ds);
}
?>
Ist mein Ansatz richtig und hab ich irgendeine Kleinigkeit übersehen oder ist er komplett falsch ?