ve Windows coby shellový skript má následující
výhody:
- neexistují v něm viry
- s Active directory se dobře obcuje přes LDAP
- vynikající podpora SQL serverů
- rychlý interní SMTP mailer
- podpora COM objektů
Příklad:
Po logonu uživatele potřebuji získat jeho celé jméno a toto nastavit coby Username vkládané do dokumentů ve WORDu: (v AD existuje uživatel "ldap" s právy Account operatora)
<?php
// Nastavi pro MS Office jmeno a inicialy uzivatele
$un=getenv("username");
// Pripojime se pres LDAP k Active Directory, zjistime dulezitosti
if( !$ds=ldap_connect("LDAP://w2kserver/") ) die();
if( !$r=ldap_bind($ds,"CN=ldap,OU=Special Users,DC=firma,DC=cz","heslo_ldap") ) die();
if( !$sr=ldap_search($ds,"DC=firma,DC=cz","samaccountname=$un") ) die();
@$info = ldap_get_entries($ds, $sr);
// Pokud nesmysly
if( empty($info) ) die();
if( $info["count"]==0 ) die();
@$displayname=$info[0]["displayname"][0];
@$initials=$info[0]["initials"][0];
if( empty($displayname) || empty($initials) ) die();
// Ty uz nepotrebujeme...
ldap_free_result($sr);
ldap_close($ds);
// Nastavime WORD
$word=new COM("WORD.Application");
$word->username = $displayname;
$word->userinitials = $initials;
$word->useraddress = "firma\r\nulice\r\nmesto";
$word->Quit(0);
$word->Release();
$word = null;
?>