";
##########################################
# DHCP Einbindung
if ($dhcp != "none" && $dhcp != $olddhcp){
if ($dhcp != ""){
$exp = ldap_explode_dn($dhcp, 1);
$dhcpcn = $exp[0];
$dhcpau = $exp[2];
$entrydhcp ['dhcphlpcont'] = $dhcp;
if ($olddhcp != ""){
echo "DHCP replace "; print_r($olddhcp); echo " with "; print_r($entrydhcp); echo " "; if ($result = ldap_mod_replace($ds,$hostDN,$entrydhcp)){ update_dhcpmtime(array()); $mesg = "Rechner erfolgreich in DHCP ".$dhcpcn." [Abt.: ".$dhcpau."] angemeldet "; }else{ $mesg = "Fehler beim ändern des DHCP Dienstes zu ".$dhcpcn."! "; } }else{ if ( $hostmac != ""){ if ( $hostip != "" ){ $entrydhcp ['dhcpoptfixed-address'] = "ip"; } echo "DHCP add "; print_r($entrydhcp); echo " "; if ($result = ldap_mod_add($ds,$hostDN,$entrydhcp)){ update_dhcpmtime(array()); $mesg = "Rechner erfolgreich in DHCP ".$dhcpcn." [Abt.: ".$dhcpau."] angemeldet "; }else{ $mesg = "Fehler beim ändern des DHCP Dienstes zu ".$dhcpcn."! "; } }else{ $mesg = "Es ist keine MAC Adresse für den Rechner eingetragen. Dies ist jedoch Voraussetzung für einen DHCP Eintrag. "; } } }else{ $entrydhcp ['dhcphlpcont'] = array(); if ( $oldfixedaddress != "" ){ $entrydhcp ['dhcpoptfixed-address'] = array(); } #if ( $oldrbs != "" ){ # $entrydhcp ['hlprbservice'] = array(); #} echo "DHCP delete "; echo " "; if ($result = ldap_mod_del($ds,$hostDN,$entrydhcp)){ update_dhcpmtime(array()); $mesg = "Rechner erfolgreich aus DHCP gelöscht "; }else{ $mesg = "Fehler beim löschen aus DHCP Dienst! "; } } } if ($dhcp == "none"){ echo " DHCP none "; } ############################# # DHCP Option fixed-address if ($fixedaddress != "none" && $fixedaddress != $oldfixedaddress){ if ($fixedaddress != ""){ $entryfixadd ['dhcpoptfixed-address'] = $fixedaddress; if ($oldfixedaddress != ""){ echo "Fixed Address ändern"; echo " "; if ($result = ldap_mod_replace($ds,$hostDN,$entryfixadd)){ update_dhcpmtime(array()); $mesg = "Option Fixed-Address erfolgreich auf ".$fixedaddress." geändert "; }else{ $mesg = "Fehler beim ändern der Option Fixed-Address auf ".$fixedaddress."! "; } }else{ echo "Fixed Address auf IP Adresse setzen"; echo " "; if ($result = ldap_mod_add($ds,$hostDN,$entryfixadd)){ update_dhcpmtime(array()); $mesg = "Option Fixed-Address erfolgreich auf ".$fixedaddress." gesetzt "; }else{ $mesg = "Fehler beim setzen der Option Fixed-Address auf ".$fixedaddress."! "; } } }else{ $entryfixadd ['dhcpoptfixed-address'] = array(); echo "No Fixed Address"; echo " "; if ($result = ldap_mod_del($ds,$hostDN,$entryfixadd)){ update_dhcpmtime(array()); $mesg = "Option Fixed-Address erfolgreich gelöscht "; }else{ $mesg = "Fehler beim löschen der Option Fixed-Address! "; } } } ##################################### # Restliche Attribute ... #if (count($atts) != 0){ $entryadd = array(); $entrymod = array(); $entrydel = array(); foreach (array_keys($atts) as $key){ if ( $oldatts[$key] == $atts[$key] ){ } if ( $oldatts[$key] == "" && $atts[$key] != "" ){ # hier noch Syntaxcheck $entryadd[$key] = $atts[$key]; } if ( $oldatts[$key] != "" && $atts[$key] != "" && $oldatts[$key] != $atts[$key] ){ # hier noch Syntaxcheck $entrymod[$key] = $atts[$key]; } if ( $oldatts[$key] != "" && $atts[$key] == "" ){ # hier noch Syntaxcheck $entrydel[$key] = $oldatts[$key]; } } #print_r($entryadd); echo " "; #print_r($entrymod); echo " "; #print_r($entrydel); echo " "; if (count($entryadd) != 0 ){ #print_r($entryadd); echo " "; #echo "neu anlegen "; foreach (array_keys($entryadd) as $key){ $addatts .= "".$key.","; } if(ldap_mod_add($ds,$hostDN,$entryadd)){ $mesg = "Attribute ".$addatts." erfolgreich eingetragen "; update_dhcpmtime(array()); }else{ $mesg = "Fehler beim eintragen der Attribute ".$addatts." "; } } if (count($entrymod) != 0 ){ #print_r($entrymod); echo " "; #echo "ändern "; foreach (array_keys($entrymod) as $key){ $modatts .= "".$key.","; } if(ldap_mod_replace($ds,$hostDN,$entrymod)){ $mesg = "Attribute ".$modatts." erfolgreich geaendert "; update_dhcpmtime(array()); }else{ $mesg = "Fehler beim aendern der Attribute ".$modatts." "; } } if (count($entrydel) != 0 ){ #print_r($entrydel); echo " "; #echo "löschen "; foreach (array_keys($entrydel) as $key){ $delatts .= "".$key.","; } if(ldap_mod_del($ds,$hostDN,$entrydel)){ $mesg = "Attribute ".$delatts." erfolgreich geloescht "; update_dhcpmtime(array()); }else{ $mesg = "Fehler beim loeschen der Attribute ".$delatts." "; } } #} ##################### $mesg .= " Sie werden automatisch auf die vorherige Seite zurückgeleitet. Falls nicht, klicken Sie hier back"; redirect($seconds, $url, $mesg, $addSessionId = TRUE); echo " |