導航:首頁 > 編程語言 > phpajaxget

phpajaxget

發布時間:2022-10-25 10:05:11

『壹』 ajax怎麼訪問php中的方法

ajax非同步傳輸,個人理解ajax和表單沒有什麼區別,只是表單刷新整個頁面,ajax 在不刷新頁面的情況下傳送數據到後台並接收後台處理的結果,用post或get方法給php文件或主入口文件對應的方法傳值,在對應的php文件有$_POST或$_GET 接受,就可以了

『貳』 php如何獲取jquery ajax傳遞過來的值

方法和詳細的操作步驟如下:

1、第一步,安裝並配置PHP集成環境,以phpstudy為例,見下圖,轉到下面的步驟。

『叄』 請問下 php 怎麼獲取 ajax 請求 來源頁面的 完整 url 地址啊

PHP在經常要用到上一頁的地址,如在設置要登陸跳轉的頁面上。
$_SERVER['HTTP_REFERER'] //可以得到上一頁的地址
$_SERVER[PHP_SELF] //得到當前頁面地址
$_SERVER["HTTP_HOST"].$_SERVER["PHP_SELF"]."?".$_SERVER["QUERY_STRING"] //這個可以得到帶參數的地址

『肆』 ajax get 傳值給php問題

1.php中responseText列印出來會返回yes,4.php則是輸出的no.
這是正確的。
使用以下兩條語句後
xHRObject.open("GET", "4.php?lat=" + 1 +"&lng=" + 1, true);
xHRObject.onreadystatechange = getData;
4.php已經運行了,只是它的輸出YES直接送到xHRObject對象中了,
因此xHRObject.responseText列印出來為YES
而直接運行4.PHP,因沒有帶參數,即lat沒有定義,輸出為NO

ajax與普通的GET或POST不同的,GET或POST一般會從當前頁面跳轉到GET或POST指定頁面,如本例中可能會跳轉到4.PHP,即如你所說的4.PHP成功輸出YES;但ajax不會跳轉,因此顯示的YES信息也只會在當前頁面。

『伍』 這樣寫ajax 怎麼PHP get接收不到 而print_r($_REQUEST可以列印出來、

你好,你這是因為。。click函數沒有返回flase,導致submit按鈕默認提交了。。而沒有執行ajax請求。。所以你收到的$_REQUEST內容全部是表單通過POST提交的。。謝謝。

『陸』 thinkphp中怎麼用ajax

thinkphp中使用ajax很簡單.主要掌握的地方有三個.

第一.tp中ajax的url需要使用大U方法.比如:$.post("{:U('User/add')}")

第二.控制器中返回結果得第一種方法.$this->error('失敗','',true); 第三個參數為true.則發揮的是json數據.包含info.status.url三項.

第三.控制器中返回結果的第二種方法.$this->ajaxReturn(array('customKey1'=>'customValue1','customKey2'=>'customValue2','customKey3'=>'customValue3')).

掌握以上三點和ajax基本使用方法.那麼在tp中使用ajax也就掌握了.簡單的例子如下.偽代碼,或許有錯.

模板中:

<script>
$.post("{:U('User/add')",{uname:xiaoming,age:15},function(data){
//data接收返回數據
if(data.status==1){
alert(data.info);
location.href=data.url;
}else{
alert('錯誤');
}
});
</script>

控制器中:

publicfunctionadd(){
if(IS_AJAX){
$name=I('post.name','','trim');
$age=I('post.age','','trim');
if($name&&$age){
//插入數據
$this->success('添加成功',U('User/index'),true);
}else{
$this->ajaxReturn(array(
'status'=>0,
'info'=>'大爺,您沒輸入名字',
'url'=>U('User/add')
));
}

}else{
returnfalse;
}
}

大概就是這樣子.至於剩下的$.ajax.$.getJson等等都是一樣的道理

『柒』 thinkphp怎樣獲取ajax請求數據

一般將前台頁面搜索結果中,不喜歡的內容(鏈接),刪除掉,因為整個網站的編程框架式thinkphp,運用js中的ajax對頁面進行響應,調用後台php介面,實現前台和後台資料庫的同時更新.
首先我們需要做的就是在前台頁面中添加一個文本「刪除」,可以這么添加:
代碼如下:

<a href="javascript:void(0);" id= "<php>echo $val[id]</php>" class="delete" >刪除</a>
上面的html代碼的意思:就是給刪除添加一個href,這個href是個js函數,類似於超鏈接的作用,當然對於我這樣的新手在剛開始的時候會有疑惑,我們平時的超鏈接不是這樣的,網頁中很多的javascript:void(0),那程序怎麼知道用戶點擊刪除後,會響應其真正對應的js函數呢?別急,這就是為什麼會為刪除添加id以及class這樣的標簽,相信我把js中的代碼公布出來以後你就會明白了,代碼如下:
jQuery(".list a.delete").click(function(){
if(confirm("你確定要刪除嗎?")){
var _this=this;
var id = jQuery(_this).attr("id");
jQuery.ajax({
url : '/Search/index.php/Jason/delete?',
data : {'id':id},
dataType : 'json',
success : function(data){
var del = data.del;
if(del == 1){//刪除成功
jQuery("#"+id).parents(".list").remove();
}else{//刪除失敗
alert("刪除失敗");
}
}
});
}
});

大家看函數的頭部:jQuery(".list a.delete").click(),jQuery後面的標簽是很重要的,這就保證了jquery很准確的響應頁面中用戶點擊的「位置」,添加的事件為click(),在click里添加響應事件的代碼:var id = jQuery(_this).attr("id");獲取a對應的id,因為這個id是我們刪除資料庫時用到的鏈接id,當然這種直接明文的方式不好,在這里只是介紹整個響應過程。調用ajax,實現非同步的運行整個過程。我們設置了js接受的是json串,這里的方式應該有很多種吧,我沒有去嘗試,大家要是有興趣可以自行嘗試一下。/Search/index.php/Jason/delete?這句話就是js去請求php的介面,php介面對用的代碼如下:
注意ajax在求php介面時的路徑,也就是delete函數必須放在JasonAction.class.php中,此例子是必須這樣的:
代碼如下:

public function delete(){
if($this->isGet()){
$userId = session("uid");//用戶登錄
if(!empty($userId)){
$a = M('***');
$id = $this->_get('id');
$result=$a->where("id=$id")->delete();//刪除
if($result > 0){
$arr = array("del"=>'1');
}else{
$arr = array("del"=>'0');
}
$json_str = json_encode($arr);
echo $json_str;//返回給js
}
}
}

相信大家對上面的代碼不會陌生吧,整個過程都是thinkphp框架內部配置完畢的.
var del = data.del;這句是接受php代碼返回來的json串中del這個key的value,進而在前台進行頁面更新和響應.

復制代碼代碼如下:
if(del == 1){//刪除成功
jQuery("#"+id).parents(".list").remove();//這句話就是後台刪除成功後,直接在前台對響應的div進行刪除,這樣性能就會很快,無需進行後台數據的重新提取至前台頁面中,
}else{//刪除失敗
alert("刪除失敗");
}
整個響應的過程就是這樣,至於效果優化,是優化和細化方面的問題,後來,身邊的同事又告訴我前台移除響應鏈接的另一個動態效果:
即將:
代碼如下:
jQuery("#"+id).parents(".list").remove();
替換為:
代碼如下:

jQuery("#"+id).parents(".list").slideUp("slow", function(){
jQuery(this).remove();
});

『捌』 php ajax請求,說提交的請求中存在不安全的值,請修改後重新提交

要設置form的提交方式,一般有兩種方式get和post默認的是get
<form name="form" method="post">
如果不填寫method的話,默認將以get方式提交。

你可以去後盾人平台看看,裡面的東西不錯

『玖』 jquery ajax get中文請求亂碼問題(php)

function js_unescape($str)
{
$ret = '';
$len = strlen($str);

for ($i = 0; $i < $len; $i++)
{
if ($str[$i] == '%' && $str[$i+1] == 'u')
{
$val = hexdec(substr($str, $i+2, 4));

if ($val < 0x7f) $ret .= chr($val);
else if($val < 0x800) $ret .= chr(0xc0|($val>>6)).chr(0x80|($val&0x3f));
else $ret .= chr(0xe0|($val>>12)).chr(0x80|(($val>>6)&0x3f)).chr(0x80|($val&0x3f));

$i += 5;
}
else if ($str[$i] == '%')
{
$ret .= urldecode(substr($str, $i, 3));
$i += 2;
}
else $ret .= $str[$i];
}
return $ret;
}

上面這個函數是接收ajax傳過來的參數是調用
使用方法:js_unescape($_GET['通過ajax傳過來的參數']);

function phpescape($str)
{
$sublen=strlen($str);
$retrunString="";
for ($i=0;$i<$sublen;$i++)
{
if(ord($str[$i])>=127)
{
$tmpString=bin2hex(iconv("utf-8","ucs-2",substr($str,$i,2)));
//$tmpString=substr($tmpString,2,2).substr($tmpString,0,2);linux下打開這項
$retrunString.="%u".$tmpString;
$i++;
} else {
$retrunString.="%".dechex(ord($str[$i]));
}
}
return $retrunString;
}

上面這個函數是返回給調用層進行的編碼操作
使用方法:phpescape('你所要輸出的內容');

『拾』 php接收ajax參數!

傳參數:
$.get(url,{'id':ddid},function(data){})
接受參數:
if(isset($_GET['id']) && $_GET['id'] != ''){
$ddid = $_GET['id'];
}

閱讀全文

與phpajaxget相關的資料

熱點內容
部隊抗洪搶險命令範文 瀏覽:884
歐姆龍plc編程軟體使用教程 瀏覽:590
ai文件pdf 瀏覽:909
騰訊雲伺服器掛載混合雲 瀏覽:758
智能小車用什麼單片機 瀏覽:463
java怎麼給窗口關閉 瀏覽:940
列舉51單片機的定址方式 瀏覽:706
剪輯app怎麼寫長篇文字 瀏覽:400
app專屬流量過月租怎麼不更新 瀏覽:654
王者程序員都有誰 瀏覽:76
給牛換腳掌解壓 瀏覽:387
圍棋有多少種演算法 瀏覽:602
unity資源包在哪個文件夾 瀏覽:704
阿里雲伺服器遠程鏈接不成功 瀏覽:482
文件系統pdf 瀏覽:766
原神安卓區服什麼意思 瀏覽:37
貝殼app怎麼線上發布 瀏覽:159
如何挑選安卓系統機頂盒 瀏覽:54
安卓快充使用有什麼注意事項 瀏覽:909
黑馬程序員的雲計算網課 瀏覽:948