hello guys, i am trying to reset zimbra account password using API SOAP, PHP without entering old password, but i can't log in as Admin.. i already have admin account, the error message is

SoapHeader Object ( [namespace] => urn:zimbra [name] => context [mustUnderstand] => ) Error : cannot login to sg2.sggrp.com :-( Exception caught!...

EXCEPTION START <<<<<<<<<<<
SoapFault exception: [soap:Sender] invalid request: missing required attribute: name in C:\xampp\htdocs\performance_monitoring\zm\Zm\Auth. php:165
Stack trace:
#0 C:\xampp\htdocs\performance_monitoring\zm\Zm\Auth. php(165): SoapClient->__soapCall('AuthRequest', Array, NULL, Object(SoapHeader))
#1 C:\xampp\htdocs\performance_monitoring\zm\reset_pa ssword.php(43): Zm_Auth->login()
#2 {main}
>>>>>>>>>>>> EXCEPTION END


here's my php code

<?php

/**
* test.php
*
* In this file there are all the usage examples useful to learn and test all the
* class methods for the Zm_Account, Zm_Server, Zm_Domain and Zm_Auth classes
*
* @author Yannick Lorenz <ylorenz@1g6.biz>
* @author Fabrizio La Rosa <fabrizio.larosa@unime.it>
* @version 2.0
* @copyright Copyright (c) 2009, Yannick Lorenz
* @copyright Copyright (c) 2012, Fabrizio La Rosa
* @package ZimbraSoapPhp
* @name test.php
* @filesource
*/
/**
* test.php examples
*/

/////////////
// Require //
/////////////

require_once("config.php");

require_once("Zm/Auth.php");
require_once("Zm/Account.php");
require_once("Zm/Domain.php");
require_once("Zm/Server.php");

require_once("Zm/User.php");

///////////
// Login //
///////////

$zim_acc = $_POST['zim_acc'];
$pass = $_POST['pass'];

$auth = new Zm_Auth($zimbraserver, $zimbraadminemail, $zimbraadminpassword,"admin");
$l = $auth->login();

if(is_a($l, "Exception")) {
echo "Error : cannot login to $zimbraserver :-(\n";
print_exception($l);
exit();
}

/////////////
// Account //
/////////////

$accountManager = new Zm_Account($auth);
$account_name = $zim_acc;


$r = $accountManager->accountExists($account_name);

if(!$r) {
echo "NO: account $account_name doesn't exist :-(\n";
exit();
} else {
//echo "YES : account $account_name exists :-)\n";
$l = $accountManager->setAccountPassword($account_name, $pass);

if(is_a($l, "Exception")) {
echo "Error : cannot change password for account $account_name :-(\n";
print_exception($l);
} else {
print_var($l, "Set Account Password");
echo "OK : password changed for account $account_name :-)\n";
}

}

?>

please HELP ME..