!привет всем!
проблема в следующем:
мне надо чтоб у меня просто работала 1 функция
Код |
function wm_X9Req(){ global $wmType, $wmWMID; $reqID = wm_ReqID(); $doc = domxml_new_doc('1.0'); $root = $doc->create_element('w3s.request'); $root = $doc->append_child('root'); $tmp = $doc->create_element('reqn'); $tmp->set_content($reqID); $root->append_child($tmp); $tmp = $doc->create_element('wmid'); $tmp->set_content($wmWMID); $root->append_child($tmp); if($wmType=='classic'){ $tmp = $doc->create_element('sign'); $tmp->set_content(wm_GetSign($wmWMID.$reqID)); $root->append_child($tmp); $addr = 'XMLPurses.asp'; } else { $addr = 'XMLPursesCert.asp'; }; $getpurses = $doc->create_element('getpurses'); $root->append_child($getpurses); $tmp = $doc->create_element('wmid'); $tmp->set_content($wmWMID); $getpurses->append_child($tmp); $request = $doc->dump_mem(TRUE); $result = wm_xmlHttpsReq($addr, $request); $xml_parser = xml_parser_create('UTF-8'); xml_parse_into_struct($xml_parser, $result, $vals, $index); xml_parser_free($xml_parser); $check = wm_CheckResp($vals,$index); if( $check != 0) die($check); $purses = array(); $pursename = ''; $amount = ''; $desc = ''; for($n = 0; $n < count($vals); ++$n){ $e = $vals[$n]; switch ($e['tag']){ case 'PURSE': switch ($e['type']){ case 'open': $pursename = ''; $amount = ''; $desc = ''; break; case 'close': $purses[$pursename] = array('amount' => $amount, 'desc' => $desc); break; } break; case 'PURSENAME': $pursename = $e['value']; break; case 'AMOUNT': $amount = $e['value']; break; case 'DESC': $desc = $e['value']; break; } } return $purses; }; |
Код |
function wm_X9Req(){ global $wmType, $wmWMID; $reqID = wm_ReqID(); $doc = new DOMDocument('1.0', 'iso-8859-1'); $root = $doc->createElement('w3s.request'); $root = $doc->appendChild($root); $tmp = $doc->createElement('reqn'); $tmp->set_content($reqID); $root->append_child($tmp); $tmp = $doc->create_element('wmid'); $tmp->set_content($wmWMID); $root->append_child($tmp); if($wmType=='classic'){ $tmp = $doc->create_element('sign'); $tmp->set_content(wm_GetSign($wmWMID.$reqID)); $root->append_child($tmp); $addr = 'XMLPurses.asp'; } else { $addr = 'XMLPursesCert.asp'; }; $getpurses = $doc->create_element('getpurses'); $root->append_child($getpurses); $tmp = $doc->create_element('wmid'); $tmp->set_content($wmWMID); $getpurses->append_child($tmp); $request = $doc->dump_mem(TRUE); $result = wm_xmlHttpsReq($addr, $request); $xml_parser = xml_parser_create('UTF-8'); xml_parse_into_struct($xml_parser, $result, $vals, $index); xml_parser_free($xml_parser); $check = wm_CheckResp($vals,$index); if( $check != 0) die($check); $purses = array(); $pursename = ''; $amount = ''; $desc = ''; for($n = 0; $n < count($vals); ++$n){ $e = $vals[$n]; switch ($e['tag']){ case 'PURSE': switch ($e['type']){ case 'open': $pursename = ''; $amount = ''; $desc = ''; break; case 'close': $purses[$pursename] = array('amount' => $amount, 'desc' => $desc); break; } break; case 'PURSENAME': $pursename = $e['value']; break; case 'AMOUNT': $amount = $e['value']; break; case 'DESC': $desc = $e['value']; break; } } return $purses; }; |