AJAX+cURL+SimpleXMLElement处理数据

curl_xml.html:

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>cURL提交XML数据</title>
 6     <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
 7     <script>
 8     $(function(){
 9         $(‘input[type="button"]‘).click(function(){
10             //alert(decodeURIComponent($(‘form‘).serialize()));    //decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码
11             $.ajax({
12                 url : ‘curl_xml.php‘,
13                 type : ‘post‘,
14                 data : $(‘form‘).serialize(),
15                 success : function(data, status, xhr){
16                     $(‘#box‘).html(data);
17                 }
18             });
19         });
20     })
21     </script>
22 </head>
23 <body>
24 <form>
25     商品名称:<input type="text" name="goods_name"><br/>
26     商品价格:<input type="text" name="goods_price"><br/>
27     商品分类:<select name="goods_brand">
28                   <option value="电脑">电脑</option>
29                   <option value="平板">平板</option>
30                   <option value="手机">手机</option>
31                   <option value="大哥大">大哥大</option>
32               </select>
33     <br/>
34     是否发货:<input type="radio" name="issend" value="是"> 是 <input type="radio" name="issend" value="否"> 否<br/>
35     <input type="button" value="提交">
36 </form>
37 <div id="box"></div>
38 </body>
39 </html>

界面:

curl_xml.php:

 1 <?php
 2     $goods_name = $_POST[‘goods_name‘];
 3     $goods_price = $_POST[‘goods_price‘];
 4     $goods_brand = $_POST[‘goods_brand‘];
 5     $issend = $_POST[‘issend‘];
 6
 7     $xml = <<<xml
 8 <?xml version="1.0" encoding="utf-8"?>
 9 <goods>
10     <goodsname>$goods_name</goodsname>
11     <goodsprice>$goods_price</goodsprice>
12     <goodsbrand>$goods_brand</goodsbrand>
13     <issend>$issend</issend>
14 </goods>
15 xml;
16
17     $url = "http://localhost/test/curl_xml_deal.php";
18
19     $ch = curl_init();
20
21     curl_setopt($ch, CURLOPT_URL, $url);
22     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
23     curl_setopt($ch, CURLOPT_POST, true);
24     curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
25
26     $res = curl_exec($ch);
27
28     curl_close($ch);
29
30     echo $res;
31 ?>

curl_xml_deal.php:

1 <?php
2     $xml = file_get_contents("php://input");
3     $sxe = simplexml_load_string($xml);
4     var_dump($sxe);
5     //echo $sxe[0]->goodsname;    //商品名称
6 ?>

结果:

时间: 2024-08-15 08:25:32

AJAX+cURL+SimpleXMLElement处理数据的相关文章

AJAX+REA实现前后台数据交互的加密解密

AJAX+REA实现前后台数据交互的加密解密 1.创建js文件Encryption.js /**  * 加密解密  */ /** RSA加密用 生成key */ function bodyRSA(){ /** 1024位的key参数写130,2014位的key参数写260 */ setMaxDigits(130); /** ajax 调用后台方法,取回公钥 */ var keyR ;     $.ajax({      url: "/GHGL/Key/pk",//请求后台的url,本例

php使用curl提交xml数据

$str_callback_url="xxxx.com/api.php";$str_callback_url="xml数据";$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $str_callback_url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);curl_setopt($ch,

Java语言实现通过Ajax抓取后台数据及图片

1.Java语言实现通过Ajax抓取后台数据及图片信息 1.1数据库设计 create table picture( pic_id number not null, pic_name varchar(200)not null, pic_url varchar2(200) not null, pic_descp varchar2(200) not null, pic_price varchar2(200) not null ) insert into picture values(1 ,'小米5s

ajax请求获取的数据无法赋值给全局变量问题总结

一.总结: 1.问题描述: 今天做项目遇到在用表单显示详细信息的过程中ajax请求获取的数据无法赋值给全局变量的情况,从列表页面进入详情页,在详情页面被渲染了之后就会调用js文件里的接口向服务器请求数据,除了详情页面被加载之后需要向服务器发送ajax请求,在详情页面还有几个表单控件的属性需要去请求服务器获取实际项目中要求要显示的数据. 如下代码,直接在ajax请求中改变表单控件的值,避开了给全局变量赋值. 给全局变量赋值的解决办法,给ajax请求设置async为false,表示请求为同步请求:

jquery 或ajax返回的中文数据总是乱码解决方案

要将Servlet中的 response.setContentType("text/html;charset=utf-8")这行代码放在 PrintWriter out = response.getWriter()之前. jquery 或ajax返回的中文数据总是乱码解决方案,布布扣,bubuko.com

ajax请求返回的数据无法用选择器绑定事件

今天在写一个项目的时候突然发现一个很怪异的问题,问题是这样的: 当我使用ajax去后台请求数据就将后台拼接生成的html代码直接添加到页面中了,但是在后续操作中发现,生成的html代码绑定的click不起作用,但是换成onclick="click()"的话就可以了. 出现的原因是: 因为先后顺序的关系啊~用AJAX加载是异步加载这个应该很清楚吧~既然是异步加载那么就是非同步的,也就是说当你的整个页面加载完成后$('.div').click(function(){.....});这句根本

ASP.Net WebAPI与Ajax进行跨域数据交互时Cookies数据的传递

前言 最近公司项目进行架构调整,由原来的三层架构改进升级到微服务架构(准确的说是服务化,还没完全做到微的程度,颗粒度没那么细),遵循RESTFull规范,使前后端完全分离,实现大前端思想.由于是初次尝试,中途也遇到了不少问题.今天就来讨论一下其中之一的问题,WebAPI与前端Ajax 进行跨域数据交互时,由于都在不同的二级域名下(一级域名相同),导致Cookies数据无法获取. 最开始通过头部(Header)将Cookies传输到其WebAPI,也能解决问题. 下面讲述另外一种解决方案. 解决过

Ajax请求返回Json数据

介绍一下用Ajax向服务器请求数据的方法,以及对于返回的Json数据的使用. 1 $.ajax({ 2 type:"post", 3 async:false, 4 url: ******** 5 data:{"province":$("#provice").val(), 6 "city":$("#city").val(), 7 "area":$("#area").va

spring ajax提交并返回数据方式

jsp $('#userId').change(function() { $.ajax({ url: "${ctx}/test/checkUser.do", contentType: "application/json;charset=utf-8", type: "get", data:{ userId:$("#userId").val() }, success: function(data) { if(data!=''){