導航:首頁 > 編程語言 > 反向ajaxphp

反向ajaxphp

發布時間:2023-10-20 17:09:35

php的ajax問題。非同步發送到伺服器的log.php頁面,請問log.php裡面還有其他與aja

樓主,你好,你的意思是,log.php這個頁面上代碼有很多,但你通過ajax只希望執行其中的一部分吧,那就很好辦了,直接ajax請求的時候GET傳一個action=li8的值,然後只需要在log.php的頁面判斷一下, 如果接收到GET["action"]=="li8"的話,就執行對ajax請求過來的代碼,反則就是其他代碼的執行,與ajax處理的代碼就用if區分開了!

Ⅱ ajax調用PHP類庫中的函數

直接調用不可能,但可以繞過去調用
a.php
<?php
$_token = md5(time());//令牌
$_SESSION['_TOKEN'] = $_token;
//....
?>
<html>
...
<form>
<input name="_TOKEN" value="<?php print $_token; ?>">
....
//這里說一下令牌,令牌一般是伺服器端驗證提交數據是否為合法
//與驗證碼功能差不多,不過驗證碼需要手動輸入,這個是程序內部使用
...
處理post
<?php
if($_POST['_TOKEN'] == $_SESSION['_TOKEN'])
{
$_SESSION['_TOKEN'] = '';//清除令牌,防止網路延緩的再次提交。
...
}
?>
然後是ajax
上面我為什麼要在你原來的程序上加入令牌呢,因為可以隨意的調用php函數是很不安全的,很容易被有心人利用,所以做一點安全保護,當然不一定絕對安全

function _new_ajax()
{
//創建XMLHTTPRequests
return xhr;
}

function _ajax(_option)//url, data, type, async
{
//初始化
if(typeof _option.url == 'undefined' || _option.url == '')
{
alert('ajax錯誤,沒有定義請求路徑');
return false;
}
_option.data = _option.data || {};
_option.type = _option.type || 'GET';
_option.async = _option.async || true;
_option.callback = _option.callback || function(){};
//開始請求
var xhr = _new_ajax();
if(typeof _option.data == 'string')
{
_option.url += (_option.url.match(/\?/) ? "&" : "?") + _option.data;
}
else
{
for(var i in _option.data)
{
_option.url += (_option.url.match(/\?/) ? "&" : "?") + i + '=' + _option.data[i];
}
}
xhr.open(_option.type, _option.url, _option.async);
xhr.onreadystatechange = function(){
if(xhr.readyState == 4 && xhr.status == 200)
{
var res = xhr.responseText;
_option.callback(res);
}

};
xhr.send(null);
xhr = null;
}
上面的是我簡單寫的,估計考慮不是很全

驗證用戶是否存在就這樣
function check_user_id()
{
document.getElementById('useridexist').innerHTML = "Check the ID, Please wait...";
var user_id = document.login.userid.value;
//這里是上面說的,要直接使用函數庫,必須安全驗證
var _TOKEN = document.login._TOKEN.value;
_ajax({
url:'class/useridexist.php',
data:{_TOKEN:_TOKEN, function:check_user, id:user_id},//調用php函數check_user
callback:function(res){
document.getElementById('useridexist').innerHTML = res;
}
})
}
好了,准備就緒,現在看php端了
b.php
<?php
if($_GET['_TOKEN'] == $_SESSION['_TOKEN'])
{
//這里不清除令牌,因為提交post還要使用,驗證在前,提交post在後
$function = $_GET['function'];
if(function_exists($function))
{
$function($_GET);
}
else
{
print '函數'.$function.'不存在';
}
}

//以下為函數庫
function check_user($get)
{
//.....驗證存在否,輸出
}
?>

Ⅲ jquery通過ajax調用php取得返回值

返回數據代碼如下:

閱讀全文

與反向ajaxphp相關的資料

熱點內容
銀行人員如何解壓 瀏覽:829
newfile命令快捷鍵 瀏覽:567
阿里雲物理伺服器 瀏覽:953
靈狐視頻app哪個好 瀏覽:257
大廠退役程序員自述 瀏覽:252
linux命令watch 瀏覽:889
加密幣哪些平台不撤出中國 瀏覽:553
max加線命令 瀏覽:424
app胖瘦模式哪個好用 瀏覽:724
可以下載源碼的軟體 瀏覽:487
程序員寫一天代碼累嗎 瀏覽:628
ie文件夾禁止訪問 瀏覽:545
百川互聯網程序員 瀏覽:785
linuxpython解釋器 瀏覽:669
興安得力軟體加密狗 瀏覽:494
智能網路攝像頭加密 瀏覽:575
軟體畢業程序員培訓 瀏覽:654
安卓陀螺儀低怎麼辦 瀏覽:248
一級建造師復習題集pdf 瀏覽:905
法理學pdf海默 瀏覽:394