1、首先安裝配置php集成環(huán)境。以phpstudy為例。
創(chuàng)新互聯(lián)專注于企業(yè)成都營銷網(wǎng)站建設(shè)、網(wǎng)站重做改版、西疇網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5開發(fā)、購物商城網(wǎng)站建設(shè)、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為西疇等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
2、在www目錄下新建一個html文件(new1.html),和一個php(ab.php)文件。
3、html文件先引用所需的類庫jquery文件,其次在body部分,以一個簡單的表單提交為例。
4、html的javascript-ajax部分,以上步body中的cilik事件為例。
5、php文件的編寫部分,主要使用$_POST來接受ajax傳輸?shù)臄?shù)據(jù),并可以返回不同類型的數(shù)據(jù)。如echo結(jié)果或者json_encode轉(zhuǎn)碼成為json格式的數(shù)據(jù)返還給前端做處理。
6、結(jié)果展示:表單中的內(nèi)容在提交后,無刷新展示了出來。
你是想抓別人網(wǎng)頁上ajax動態(tài)載入的數(shù)據(jù)吧? 1、要找到它的ajax載入的URL地址 2、利用PHP的file_get_contents($url)函數(shù)讀取那個url地址。 3、對抓取到的內(nèi)容進行分析或正則過濾。
方法和詳細的操作步驟如下:
1、第一步,安裝并配置PHP集成環(huán)境,以phpstudy為例,見下圖,轉(zhuǎn)到下面的步驟。
2、第二步,完成上述步驟后,在www目錄中創(chuàng)建一個新的html文件(new1.html)和一個php(ab.php)文件,見下圖,轉(zhuǎn)到下面的步驟。
3、第三步,? 完成上述步驟后,html文件首先引用所需的類庫jquery文件,然后引用正文部分,以簡單的表單提交為例,見下圖,轉(zhuǎn)到下面的步驟。
4、第四步,完成上述步驟后,html的javascript-ajax部分,以上一步正文中的cilik事件為例,見下圖,轉(zhuǎn)到下面的步驟。
5、第五步,完成上述步驟后,php文件的準備部分主要使用$ _POST接受ajax傳輸?shù)臄?shù)據(jù),并且可以返回不同類型的數(shù)據(jù)。
例如回聲結(jié)果或轉(zhuǎn)碼為json格式的json_encode數(shù)據(jù)將返回到前端進行處理,見下圖,轉(zhuǎn)到下面的步驟。
6、第六步,完成上述步驟后,結(jié)果顯示:提交表單中的內(nèi)容后,無需刷新即可顯示該內(nèi)容,見下圖。這樣,就解決了這個問題了。
你是說用 php 獲取 遠程的網(wǎng)頁?
你去看這個函數(shù):file_get_contents
---------------------------------------------
你的事: 后臺要查詢出一個用戶(用戶名,用戶ID等一些信息)再把這些信息返回到前臺顯示。
但是前臺現(xiàn)在我只要一個用戶名,這樣的話,最好用 json 格式。
比如,后臺這樣寫 :
echo '{"name":'. json_encode('前端攻城師') .',"id":1000,"area":'. json_encode('中國') .'}';
然后前臺代碼:
script
$.post("index.php?a=diary_view2action=first" , function(data){
alert(data.name);
},'json');
/script
這樣,就可以獲取 名字啦。。。
如果還有問題,設(shè)我為最佳,然后去 jQuery 愛好者論壇 去提問。。。
有高手幫你回答。。。
一般將前臺頁面搜索結(jié)果中,不喜歡的內(nèi)容(鏈接),刪除掉,因為整個網(wǎng)站的編程框架式thinkphp,運用js中的ajax對頁面進行響應(yīng),調(diào)用后臺php接口,實現(xiàn)前臺和后臺數(shù)據(jù)庫的同時更新.
首先我們需要做的就是在前臺頁面中添加一個文本“刪除”,可以這么添加:
代碼如下:
a href="javascript:void(0);" id= "phpecho $val[id]/php" class="delete" 刪除/a
上面的html代碼的意思:就是給刪除添加一個href,這個href是個js函數(shù),類似于超鏈接的作用,當然對于我這樣的新手在剛開始的時候會有疑惑,我們平時的超鏈接不是這樣的,網(wǎng)頁中很多的javascript:void(0),那程序怎么知道用戶點擊刪除后,會響應(yīng)其真正對應(yīng)的js函數(shù)呢?別急,這就是為什么會為刪除添加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("刪除失敗");
}
}
});
}
});
大家看函數(shù)的頭部:jQuery(".list a.delete").click(),jQuery后面的標簽是很重要的,這就保證了jquery很準確的響應(yīng)頁面中用戶點擊的“位置”,添加的事件為click(),在click里添加響應(yīng)事件的代碼:var id = jQuery(_this).attr("id");獲取a對應(yīng)的id,因為這個id是我們刪除數(shù)據(jù)庫時用到的鏈接id,當然這種直接明文的方式不好,在這里只是介紹整個響應(yīng)過程。調(diào)用ajax,實現(xiàn)異步的運行整個過程。我們設(shè)置了js接受的是json串,這里的方式應(yīng)該有很多種吧,我沒有去嘗試,大家要是有興趣可以自行嘗試一下。/Search/index.php/Jason/delete?這句話就是js去請求php的接口,php接口對用的代碼如下:
注意ajax在求php接口時的路徑,也就是delete函數(shù)必須放在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框架內(nèi)部配置完畢的.
var del = data.del;這句是接受php代碼返回來的json串中del這個key的value,進而在前臺進行頁面更新和響應(yīng).
復(fù)制代碼代碼如下:
if(del == 1){//刪除成功
jQuery("#"+id).parents(".list").remove();//這句話就是后臺刪除成功后,直接在前臺對響應(yīng)的div進行刪除,這樣性能就會很快,無需進行后臺數(shù)據(jù)的重新提取至前臺頁面中,
}else{//刪除失敗
alert("刪除失敗");
}
整個響應(yīng)的過程就是這樣,至于效果優(yōu)化,是優(yōu)化和細化方面的問題,后來,身邊的同事又告訴我前臺移除響應(yīng)鏈接的另一個動態(tài)效果:
即將:
代碼如下:
jQuery("#"+id).parents(".list").remove();
替換為:
代碼如下:
jQuery("#"+id).parents(".list").slideUp("slow", function(){
jQuery(this).remove();
});
$sql="INSERT?INTO?users?(username,?psw)?VALUES($_POST['username'],$_POST['psw'])";
當然會發(fā)生PHP的解析錯誤。
在php里,把$_POST['username']這種東西放進雙引號字符串里,如"hi, $_POST['name']",無法被識別。常見的是"hi, $name",這樣可以。
要想實現(xiàn)把$_POST數(shù)組中的值插入SQL語句有多種方法。
1.PHP的字符串串接操作符即“點”號(注意:sql中字符串要加引號)
$sql?=?"INSERT?INTO?users?(username,?psw)?VALUES('".$_POST['username']."','".$_POST['psw']."')";
2.
$sql?=?"INSERT?INTO?users?(username,?psw)?VALUES('{$_POST['username']}','{$_POST['psw']}')";
3.prepared statement。較復(fù)雜但是安全。
4.字符串格式化函數(shù)sprintf
$sql?=?sprintf("INSERT?INTO?users?(username,?psw)?VALUES('%s','%s')",?$_POST['username'],?$_POST['psw']);
提醒:直接向sql語句中插入$_POST數(shù)組中的這些值而不經(jīng)過轉(zhuǎn)義會讓網(wǎng)頁存在極嚴重的SQL注入漏洞!解決方法:傳統(tǒng)方法是用mysql_real_escape_string,現(xiàn)代方法是用prepared statement。
不懂請追問,滿意請采納。
補充,你的前端似乎還有問題。dataString 里直接插入ousername和opsw可能有問題??赡軕?yīng)該先經(jīng)過url轉(zhuǎn)義。我記得jquery的ajax可以直接post一個json字典,這樣應(yīng)該更好。