HfWU - LDAP Anbindung
Aus Wikizone
Version vom 6. Juni 2007, 17:47 Uhr von 193.196.133.66 (Diskussion)
Die LDAP - Anbindung erfolgt mit Hilfe der Extension LDAP Integration
Konfiguration:
Server: 193.196.132.44 Port: 389 LDAP-Version: 2 Basis DN: ou=People,dc=fh-nuertingen,dc=de Art des LDAP Server: OpenLDAP Filter: CN=* Benutzer: uid=Manager,ou=People,dc=fh-nuertingen,dc=de Pass: sagichnich Attribut für Benutzername: uid Attribut für Email: mail
Probleme macht die Funktion:convertArray in der Datei class.tx_eulap_div.php Sie dient zur umwandlung des Zeichensatzes der Benutzerdaten. Dazu bedient Sie sich eines rekursiven Aufrufs, der bei großen Datenmengen zu einem Speicherüberlauf führt. Da der HfWU LDAP Server und Typo3 beide utf-8 benutzen, konnte das Problem durch eine kleine Erweiterung behoben werden. Vor dem rekursiven aufruf wird geprüft ob die Charsets gleich sind. Wenn dies der Fall ist wird das Array unverändert zurückgegeben.
Original:
function convertArray($arr, $char1, $char2) {
while (list($k, $val) = each($arr)) {
if (is_array($val)) {
$arr[$k] = tx_euldap_div::convertArray($val, $char1, $char2);
} else {
$arr[$k] = $this->csObj->conv($val, $char1, $char2);
}
}
return $arr;
}
Modifizierte Version:
function convertArray($arr, $char1, $char2) {
if($char1 != $char2){
while (list($k, $val) = each($arr)) {
if (is_array($val)) {
$arr[$k] = tx_euldap_div::convertArray($val, $char1, $char2);
} else {
$arr[$k] = $this->csObj->conv($val, $char1, $char2);
}
}
}
return $arr;
}