用ajax传递变量给PHP(使用了smarty),提示未定义变量

WBOY
Lepaskan: 2016-06-23 13:38:47
asal
923 orang telah melayarinya

JS源码:
function get_value_optgroup(form){
var opts;
var subject_class;
        var url; 
opts=sub_class.options[sub_class.selectedIndex].parentNode.attributes;
subject_class=opts["label"].value;
//---------------------------------------
//使用ajax发送选中的运算类
url = "compute.php?subject_class="+subject_class;
xmlhttp.open("POST",url,true);
//---------------------------------------
}

PHP代码(compute.php):
header ( "Content-type: text/html; charset=UTF-8" );  //设置文件编码格式
require("system/system.inc.php");   //包含配置文件
var_dump($_POST['subject_class']);
?>

报错:Undefined index: subject_class in D:\wamp\www\cp\compute.php

各位,帮帮忙吧!


回复讨论(解决方案)

放在url中提交的参数subject_class应该是$_GET

放在url中提交的参数subject_class应该是$_GET


我刚开始也是使用的GET方式,一样的效果。而且

放在url中提交的参数subject_class应该是$_GET


在php中改成$_REQUEST['subject_class']接收试试

在php中改成$_REQUEST['subject_class']接收试试



谢谢你。问题已经解决了。现在有个新问题,我从PHP接收的responseText中的中文值乱码。这个怎么解决?


在php中改成$_REQUEST['subject_class']接收试试



谢谢你。问题已经解决了。现在有个新问题,我从PHP接收的responseText中的中文值乱码。这个怎么解决?

保证表单页面header声明、php文件和数据库都是utf8编码就不会乱了



在php中改成$_REQUEST['subject_class']接收试试



谢谢你。问题已经解决了。现在有个新问题,我从PHP接收的responseText中的中文值乱码。这个怎么解决?

保证表单页面header声明、php文件和数据库都是utf8编码就不会乱了

的确如你所说,全都是utf-8的,但是还是出问题了




在php中改成$_REQUEST['subject_class']接收试试



谢谢你。问题已经解决了。现在有个新问题,我从PHP接收的responseText中的中文值乱码。这个怎么解决?

保证表单页面header声明、php文件和数据库都是utf8编码就不会乱了

的确如你所说,全都是utf-8的,但是还是出问题了

直接在浏览器访问接口,打印json,然后到http://www.bejson.com/看下~或者用var_dump来一步步检查

乱码一般刚开始都会遇到!
确保文件编码,文本编码都是统一的utf-8!  有时候你虽然加了声明字符集的头信息!但你的文件不是utf8格式的也不行!

感谢各位的回复,结贴

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan