$Result=file("http://ip/update.jsp?参数1=$Item1&参数2=$Item2")

解决方案 »

  1.   

    用JS可以做到function getStatus(url)
    {
        var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        xmlhttp.open("GET",url,false);
        xml.send();
        var xmldoc = xmlhttp.responseXML;
        var status = xmldoc.documentElement.selectSingleNode("//Status");
        //alert(status.text);
        return status.text
    }
    ----------------
    调用
    status = getStatus("http://ip/update.jsp?参数1=$Item1&参数2=$Item2");
      

  2.   

    如果不用JS,用PHP处理有哪些现成的函数可以使用?
      

  3.   

    xml不太熟,js倒是可以实现几下!
      

  4.   

    用php好象不能直接实现,
    其实用xmlhttp是最好的选择了,它可以实现页面无刷新就可以获取服务端的信息!
    而且xmlhttp用起来也比较方便三、XMLHTTP的使用 顾名思义,XMLHTTP是个传送XML格式数据的超文本传输协议。 实际上,XMLHTTP的数据传输过程更为灵活一些: 
    它上传的指令可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。还可以是URL的参数。 
    它下达的结果可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。 
    详情可参阅文末链接。 客户端调用XMLHTTP的过程很简单,只有5个步骤: 
    1、创建XMLHTTP对象 
    2、打开与服务端的连接,同时定义指令发送方式,服务网页(URL)和请求权限等。 
        客户端通过Open命令打开与服务端的服务网页的连接。与普通HTTP指令传送一样,可以用"GET"方法或"POST"方法指向服务端的服务网页。 
    3、发送指令。 
    4、等待并接收服务端返回的处理结果。 
    5、释放XMLHTTP对象 XMLHTTP方法: 
    Open bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword 
        bstrMethod:数据传送方式,即GET或POST。 
        bstrUrl:服务网页的URL。 
        varAsync:是否同步执行。缺省为True,即同步执行,但只能在DOM中实施同步执行。 
         应用中一般将其置为False,即异步执行。 
        bstrUser:用户名,可省略。 
        bstrPassword:用户口令,可省略。 Send varBody 
        varBody:指令集。可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。也可以省略,让指令通过Open方法的URL参数代入。 
         
    setRequestHeader bstrHeader, bstrValue 
        bstrHeader:HTTP 头(header) 
        bstrValue:HTTP 头(header)的值 
        如果Open方法定义为POST,可以定义表单方式上传: 
        xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" 
         
    XMLHTTP属性: 
    onreadystatechange:在同步执行方式下获得返回结果的事件句柄。只能在DOM中调用。 
    responseBody:结果返回为无符号整数数组。 
    responseStream:结果返回为IStream流。 
    responseText :结果返回为字符串。 
    responseXML:结果返回为XML格式数据。 希望对你有所帮助
      

  5.   

    目录
    utf8_decode --  将用 UTF-8 方式编码的 ISO-8859-1 字符串转换成单字节的 ISO-8859-1 字符串。 
    utf8_encode -- 将 ISO-8859-1 编码的字符串转换为 UTF-8 编码
    xml_error_string -- 获取 XML 解析器的错误字符串
    xml_get_current_byte_index -- 获取 XML 解析器的当前字节索引(current byte index)。
    xml_get_current_column_number --  获取 XML 解析器的当前列号 
    xml_get_current_line_number -- 获取 XML 解析器的当前行号
    xml_get_error_code -- 获取 XML 解析器错误代码
    xml_parse_into_struct -- 将 XML 数据解析到数组中
    xml_parse -- 开始解析一个 XML 文档
    xml_parser_create_ns --  生成一个支持命名空间的 XML 解析器 
    xml_parser_create -- 建立一个 XML 解析器
    xml_parser_free -- 释放指定的 XML 解析器
    xml_parser_get_option -- 从 XML 解析器获取选项设置信息
    xml_parser_set_option -- 为指定 XML 解析进行选项设置
    xml_set_character_data_handler -- 建立字符数据处理器
    xml_set_default_handler -- 建立默认处理器
    xml_set_element_handler -- 建立起始和终止元素处理器
    xml_set_end_namespace_decl_handler --  建立终止命名空间声明处理器 
    xml_set_external_entity_ref_handler -- 建立外部实体指向处理器
    xml_set_notation_decl_handler -- 建立注释声明处理器
    xml_set_object -- 在对象中使用 XML 解析器
    xml_set_processing_instruction_handler --  建立处理指令(PI)处理器 
    xml_set_start_namespace_decl_handler --  建立起始命名空间声明处理器 
    xml_set_unparsed_entity_decl_handler --  建立未解析实体定义声明处理器 谁说没有的
    看过手册没???
      

  6.   

    各位的回答帮助文件上都有的呀,假如我有一个XML文件,就如帖子中返回的成功状态时的那一段,哪位兄台能不能写个完整的示例代码,读出其中的Status标签中的值,存入一个变量,谢谢了
      

  7.   

    可以参考这个:
    根据你的xml文件来写的
    function GetData()
    {
      var oXMLDoc = new ActiveXObject('MSXML');
      sURL = "http://ip/update.jsp?参数1=$Item1&参数2=$Item2";
      oXMLDoc.url = sURL;
      var oRoot   =oXMLDoc.root; 
      if(oRoot.children != null){    
        oItem         = oRoot.children;
        nResult       = oItem.item(0).text;
      }
    }
      

  8.   

    我用PHP写了个大概的测试框架如下,不过有些问题
    <?php
      $file="test.xml";// XML文件  // 解析XML文件的函数
      function xml_parse_from_file($parser, $file) { 
       if(!file_exists($file))
       { 
       die("Can't find file \"$file\".");
       }  
       if(!($fp = @fopen($file, "r"))) { 
       die("Can't open file \"$file\"."); 
       } 
       while($data = fread($fp, 4096)) 
        { 
         if(!xml_parse($parser, $data, feof($fp))) 
         { 
         return(false); 
         } 
        } 
        fclose($fp); 
        return(true); 
      } 
      function start_element($parser, $name, $attrs){ 
      
       }    function stop_element($parser, $name){
      
       }    function char_data($parser, $data){  
      
       }    // 产生解析器的实例
      $parser = xml_parser_create();   // 设置处理函数
      xml_set_element_handler($parser, "start_element", "stop_element"); 
      xml_set_character_data_handler($parser, "char_data"); 
      xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);   // 解析文件
      $ret = xml_parse_from_file($parser, $file); 
      if(!$ret){ 
       die(sprintf("XML error: %s at line %d", 
       xml_error_string(xml_get_error_code($parser)), 
       xml_get_current_line_number($parser))); 
       } 
       echo($ret[0]);
       // 释放解析器
       xml_parser_free($parser); 
    ?>不知道中间三个函数该怎么写:   
    function start_element($parser, $name, $attrs){ 
      
       }    function stop_element($parser, $name){
      
       }    function char_data($parser, $data){  
      
       }  
    我希望能得到类似这样的一个完整的示例代码
      

  9.   

    搞定了,很简单,应该好多人都会,我在前面可能没有把问题描述清楚,我就是想要这样一个东西,贴出来,希望对有同样问题的人有所参考
    <?php
    $file = "test.xml";
    $depth = array();/*
    function startElement($parser, $name, $attrs)
    {
        global $depth;
        /*for ($i = 0; $i < $depth[$parser]; $i++) {
            print "  ";
        }
        print "$name\n";*/
        $depth[$parser]++;
    }function endElement($parser, $name)
    {
        global $depth;
        print "$name\n";
        $depth[$parser]--;
    }
    */
    function char_data($parser, $data){  
       echo($data);
       }  $xml_parser = xml_parser_create();
    //xml_set_element_handler($xml_parser, "startElement", "endElement");
    xml_set_character_data_handler($xml_parser, "char_data");
    if (!($fp = fopen($file, "r"))) {
        die("could not open XML input");
    }
    while ($data = fread($fp, 4096)) {
        if (!xml_parse($xml_parser, $data, feof($fp))) {
            die(sprintf("XML error: %s at line %d",
                        xml_error_string(xml_get_error_code($xml_parser)),
                        xml_get_current_line_number($xml_parser)));
        }
    }
    xml_parser_free($xml_parser);
    ?> 
    上面程序返回结果为1或者-1;
    如果将注释掉的行包括进去返回形式为:cancel status 1 status cancel