java传来的xml 用php解析解析的结果在用 sql 语句查询 但是解析的有乱码 报错.解析的结果用$sql="select nid from category where cName = '$arry[ncategory]'"用这条sql的话是正确的,后来我又新建个表category_exp $sql=sql="select nid from category_exp where cName = '$arry[ncategory]'"就会报错 faultString: org.xml.sax.SAXException: Bad envelope tag:  pre  就会报错 然后打印出$arry[ncategory]为空 但是用category 这个表的时候也为空却能执行

解决方案 »

  1.   

    我的两个表基本是一样的
     category_exp
    语句 值 
    格式 Compact 
    整理 gbk_chinese_ci 
    下一个 Autoindex 416 
    创建时间 2010 年 05 月 28 日 10:19 category
    行统计 语句 值 
    格式 Compact 
    整理 gbk_chinese_ci 
    下一个 Autoindex 397 
    创建时间 2010 年 05 月 17 日 11:28 但是用category_exp这个表时候就是有问题
      

  2.   

    xml解析代码
    public function parse($strXml)
    {  $arrAttribute=array();
      $doc=new DOMDocument();
      //$strXml2=iconv("GBK","utf-8",$strXml);
      $doc->loadXML($strXml);
    //  $doc->load("../upload.xml");
      $root=$doc->getElementsByTagName('exponent'); 
      $root=$root->item(0);
      //读取根节点的属性
      foreach($root->attributes as $ratt)
      {
      $arrAttribute[$ratt->nodeName]=$ratt->nodeValue;
      }
     
      $x=$doc->documentElement;
      //读取每个子节点的值
      foreach($x->childNodes as $item)
      {
      $arrAttribute[$item->nodeName]=$item->nodeValue;
      }
            return $arrAttribute;
      }