本文目錄一覽:
- 1、php怎麼接收jquery ajax傳來的值,為什麼我接過來的值為空?
- 2、AJAX提交的xml用php讀取時$HTTP_RAW_GET_DATA為空,phP.INI相關項已設置
- 3、ajax傳參數 php接收到總是空???
- 4、用js自寫ajax提交表單數據到php,但是php的$_POST為空?
- 5、ajax傳值php頁面接收處理為json 有值 但返回為null 求解
- 6、PHP接收ajax傳的數據為空,是怎麼回事?
php怎麼接收jquery ajax傳來的值,為什麼我接過來的值為空?
接收ajax的值用不着區別什麼語言。ajax就是指的在前台調用後台的數據。在前台通過js腳本就可以調用後台的數據了。一般jquery調用ajax的話會有以下的方法:
$(selector).load(url,data,callback) 把遠程數據加載到被選的元素中
$.ajax(options) 把遠程數據加載到 XMLHttpRequest 對象中
$.get(url,data,callback,type) 使用 HTTP GET 來加載遠程數據
$.post(url,data,callback,type) 使用 HTTP POST 來加載遠程數據
$.getJSON(url,data,callback) 使用 HTTP GET 來加載遠程 JSON 數據
$.getScript(url,callback) 加載並執行遠程的 JavaScript 文件
你在php中可以使用以上的js方法來接受值。如果接受不到的話可能你的文件路徑有問題。或者是腳本本身有問題。
AJAX提交的xml用php讀取時$HTTP_RAW_GET_DATA為空,phP.INI相關項已設置
在這裡說一種找到錯誤的方法,而不是這個錯誤的解
相信對你更有用,
調試程序方法:
1)確定某段程序是否運行(這很重要),加一小段代碼做個標記,
例:想知道一個循環運行幾次,加$xunhuan++;echo $xunhuan;
例:想知道一個函數是否被運行,直接加,echo’fun9被運行了.’;
你這個題有點特殊.就輸出一個文件做判斷吧, $h=fopen(‘1.txt’,’a+’);
和alert(“1處運行了”);
如果有1.txt就是被運行了,
2)觀察一個變量的值對不對,輸出
1.echo輸出
2.輸出到數據庫
3.輸出到文件,fwrite(“$myvar”,$h);這個函數可能用錯了,你找手冊吧
你這個題要用3
3)做空的判斷
4)做簡單模擬,把大段程序中的一小塊提出來,做成一個文件運行,
5)能正確運行了,也要,模擬各種情況,
6)
ajax.htm
—————–
!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “”
html xmlns=””
head
meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″ /
/head
body
script language=javascript
function post(xmldoc,action) {
//Mozilla 瀏覽器
//xmlhttp = new XMLHttpRequest();
// var xmlhttp=new ActiveXObject(“Microsoft.XMLHTTP”);
var xmlhttp=new ActiveXObject(“Msxml2.XMLHTTP”);
xmlhttp.Open(“post”,action,false);
xmlhttp.Send(xmldoc);
if (xmlhttp.status==”200″) {
// alert(“保存成功”);
//alert(xmlhttp.responseText);
return xmlhttp.responseText;
}
else return false;
}
//上面定義函數,下面運行函數
var re;
re=post(“1234″,”post.php?id=2”);
alert(re);
/script
/body
/html
———post.php——–
?
$str=$HTTP_RAW_POST_DATA;
$id=$_GET[‘id’];
echo $str;
$h=fopen(‘1.txt’,’a+’);
fwrite($h,$str.$id.’\r\n’);
?
ajax傳參數 php接收到總是空???
可以考慮使用js轉值給iframe的方法。
如:
frame src=”AddMes.php” id=”addFrame” scrolling=”yes”
var la=document.getElementById(“save”);
document.getElementById(“addFrame”).src=AddMes.php?namesave=la.value;
這樣就可以轉給 AddMes.php.
你就算用ajax。 AddMes.php也要刷新。
用js自寫ajax提交表單數據到php,但是php的$_POST為空?
注意到的RequestMethod是Undefined,這個地方應該是POST。
可以:
1、把AJAX提交的方式設置為post
2、最好把表單的method設為post,method=”post”
ajax傳值php頁面接收處理為json 有值 但返回為null 求解
首先://dataType:”json”,為何注釋掉,
其次,返回來的是對象,alert出來 可能顯示[object],此表示有值,
可用 data.key取出值key表示$rs數組鍵名
第三,若dataType:”json” 後返回的仍然是null,則說明你可能正在使用跨域請求
跨域請求請用AJAX的JSONP方式,請改為如下
JS:
$.ajax({
url:”__URL__/liandong”,
dataType:’jsonp’,
data:’callback=jsoncallbackaid=’+aid,
jsonp:’jsoncallback’,
timeout:3000
});
//回調函數
function jsoncallback(json){
alert(json.key);//key表示$rs數組鍵名
}
php:
return $_POST[‘callback’].”(“. json_encode($rs).”)”;
PHP接收ajax傳的數據為空,是怎麼回事?
在函數裏面$this代表的是函數本身,而不是你的元素哈。
你得使用$(‘.supp….’).attr(‘data-id’)獲取
原創文章,作者:JXVST,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/330727.html