PHP+Ajax用POST方法提交的数据,PHP页面收不到

PHP+Ajax用POST方法提交的数据,PHP页面收不到,第1张

要设置form的提交方式,一般有两种方式get和post默认的是get

<form

name="form" method="post">

如果不填写method的话,默认将以get方式提交。

给你看个例子和解决办法:

例子:

<volist name="survey" id="vo">

<p>

<!-- 投票小标题 -->

{$vos_question}

</p>

<volist name="survey3" id="f">

<eq name="fsid" value="$vos_id">

<p>

<if condition="$vo['s_type'] eq 0">

<label>

<!-- <span style="display:none">$radio = radiobutton{$fsid};</span> -->

<input type="radio" name="radiobutton{$fsid}" value="{$fq_name}" />

</label>

<!-- 单选答案选择 -->

{$fq_name}

<else />

<label>

<!-- <span style="display:none">$checkbox = checkboxbutton{$fsid};</span> -->

<input type="checkbox" name="checkboxbutton{$fsid}[]" value="{$fq_name}" />

</label>

<!-- 多选答案选择 -->

{$fq_name}

</if>

</p>

</for>

</eq>

</volist>

<br/>

</volist>

这段代码 我想问一下 我用jquery写ajax如何能得到2个input里name的值, 直接用{'name1':'$("input[name=radiobutton{$fsid}]")val()', 'name2':'$("input[name=checkboxbutton{$fsid}]")val()'}似乎行不通, 获取不到

解决办法:

ThinkPHP的标签在javascript中是不解析的。

----

比较可行的办法是:

$('input:checkbox')each(function()

{

var name=$(this)attr('name');

alert(name);

});

这个需要配合js,打开一个html页面,首先js用ajax请求页面,返回第一个页面信息确定处理完毕(ajax有强制同步功能),ajax再访问第二个页面。(或者根据服务器状况,你可以同时提交几个URL,跑几个相同的页面)

参数可以由js产生并传递url,php后台页面根据URL抓页面。然后ajax通过php,在数据库或者是哪里设一个标量,标明检测到哪里。由于前台的html页面执行多少时候都没问题,这样php的内存限制和执行时间限制就解决了。

因为不会浪费大量的资源用一个页面来跑一个瞬间500次的for循环了。(你的500次for循环死了原因可能是获取的数据太多,大过了php限制的内存)

不过印象中curl好像也有强制同步的选项,就是等待一个抓取后再执行下一步。但是这个500次都是用一个页面线程处理,也就是说肯定会远远大于30秒的默认执行时间。

默认值: "application/x->

把一个数组当参数传一样的,比如原来:{name:'zhang'},现在是{name:['zhang','li','wang']}。需要后台注意的是获取name参数值则要用数组去存储name值了。

你可以去后盾人平台看看,里面的东西不错

以上就是关于PHP+Ajax用POST方法提交的数据,PHP页面收不到全部的内容,包括:PHP+Ajax用POST方法提交的数据,PHP页面收不到、我用的是thinkphp3.2.3为什么使用jquery的ajax接收不到post值、如何通过php的curl模拟ajax请求,获取其返回值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9310916.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存