本文目錄一覽:
- 1、ajax怎麼調用php中的函數然後返回值
- 2、ajax提交php怎樣返回結果
- 3、PHP用ajax的時候,responseText返回的是整個頁面的html代碼,求幫助。。
- 4、為什麼ajax返回的是整個php代碼而不是echo的內容
- 5、關於ajax發送請求到php在返回xml的過程
- 6、jquery通過ajax調用php取得返回值
ajax怎麼調用php中的函數然後返回值
額,ajax 只能調用某個php ,你可以在ajax請求裡帶上參數,去執行函數,比如,url:a.php?action=add
a.php
?php
$action=$_POST[‘action’];
if($action == ‘add’){
add();
}
function add(){
}
?
ajax提交php怎樣返回結果
以thinkphp為例,自帶基類函數ajaxreturn($data,’json’),把返回結果封裝到$data變數中,以’json’格式返回即可
如果是自己的結構請參考這個函數的實現
PHP用ajax的時候,responseText返回的是整個頁面的html代碼,求幫助。。
伺服器端輸出JSON格式回調數據,然後在客戶端使用file_get_contents接收。你可以百度下菜鳥網 裡面有AJAX及JSON的教程,這裡空間有限寫不下。
下面是一個例子:
$(“XXX”).click(function(){
$.post(“XXX.PHP”,
{
name:”XXX”//向服務端提交
},
function(data){
alert(“Data.name);//服務端返回數據,服務端用$_POST接收name然後轉JSON格式輸出。
});
});
為什麼ajax返回的是整個php代碼而不是echo的內容
1、html文件要從localhost訪問,不要雙擊打開
2、(“phpinfo.php?test=1?name=null”) 多了一個?,取不到name值
3、js代碼要用script標籤包起來
4、$q要賦值,不然不走那個分支
5、改完以上問題後Apache下測試已通過,再有問題就是IIS的問題,百度「iis7解析漏洞」
關於ajax發送請求到php在返回xml的過程
你的想法是正確的,不需要另外生成xml文件。你只需要把特定格式的數據發回去就好了
關於ajax,我建議你用jquery的封裝函數.ajax
使用方法如下:
test.html
!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN”
“”
html lang=”en-US”
head
meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″
title/title
script src=”./jquery.js”/script
script
function ajax_test(params){
$.ajax({
url:’./test.php’,
type:’post’,
dataType:’html’,
data:params,
error: function(){alert(‘error’);},
success:function(products){
alert(products);
}
});
}
/script
/head
body
input type=button value=’test’ onclick=”ajax_test(‘1’);”
/body/html
test.php
?php
echo ‘hello world’;
?
關於jquery的說明文檔網上有很多。
說明:ajax的數據是按utf-8格式傳遞,如果發現亂碼問題,就是因為這個
$.ajax(properties)
使用HTTP請求(XMLHttpRequest)載入一個遠程頁面。
這是jQuery的低級AJAX實現。要查看高級抽象,見$.set、$.post等。
$.ajax()返回創建好的XMLHttpRequest對象。多數情況下並不需要直接操縱這個對象,但是如果需要手動中止請求,它也是可用的。
注意:要確保伺服器返回正確的MIME類型(例如:XML是「text/xml」)。如果返回了錯誤的MIME類型就會導致jQuery無法處理的嚴重問題。
支持的數據類型包括(見dataType選項):
“xml”: 返回一個可以由jQuery對象處理的XML文檔。
“html”: 返回純文本格式的HTML,包括求值後的腳本標記。
“script”: 將響應作為Javascript語句求值,並返回純文本。
“json”: 將響應作為JSON求值,並返回一個Javascript對象。
返回json數據的例子:
success:function(products){
$.each(products, function(i, n){
switch(i){
case ‘page’: show_pages(n);break;
case ‘other’: //$(“#data_search_res1”).html(n.sql);
break;
case ‘sql’:break;
case ‘top5’://show_top5(n);
break;
default:str_tables+=show_dable(n);
break;
}
});
}
php:生成josn數據
?php
include_once(“../include/JSON.php”);
//此文件可到google搜索,如找不到可以留下郵箱,我給你發一份
$json = new Services_JSON();
$str_back[‘page’]=array(‘start’= $start,
‘page’= $pageId,
‘pagecnt’= $pageCnt,
‘maxno’= $maxNo,
‘pages’= $pages,
‘nums’= $numRs
);
$out_put=$json-encode($str_back);
echo $out_put;
?
jquery通過ajax調用php取得返回值
返回數據代碼如下:
如果在php里有echo的值的話,可以用AJAX來接收:
有多個輸出的話,是不可能指定輸出的
需要把想要輸出的內容放到一個數組中,然後json_encode一下,在到js里循環,找到自己想要的值
比如:
//需要輸出的內容
echo ‘aaa’; echo ‘bbb’;echo ”ccc;
//合成數組
$data = array(『name1』=’aaa’,『name2』= ‘bbb’,『name2』= ‘ccc’);
//json_encode
$data = json_encode($data);
//輸出
echo $data;
js:
$.post(‘aa.php’,『』,function(mes){
var data = eval(‘(‘ + msg + ‘)’);
var name1 = data[‘name1’];
var name2 = data[‘name2’];
var name3 = data[‘name3’];
})
原創文章,作者:PWSTF,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/330301.html