php與js交互
Ⅰ js與php參數交互
你需要的應該是xhr,你可以使用ajax,或者簡化的$.post(),$.get()等,
我不知道你的url和php的處理函數、傳遞值的方式,我自定義了
url=test.php
php處理函數在test.php文件中,
方式是get
$.get('test.php?str=str',
function(data){
alert(data);//data就是處理函數返回的數據。
});
注意test.php接數據的代碼
如果test.php文件中只有一個輸出,而且就是你想要的return,那麼,不需要function了,直接寫處理代碼,然後echo輸出就可以了,當然這里指的是字元串、整型的數據類型,如果是數組的,需要藉助json,你可以使用$.getjson();
返回的數組通過json_encode;編碼
Ⅱ php與js交互 多選刪除
把下面的代碼
稍微修改一下就行了
<?php
if("確認刪除"){
$num=$_POST['checkbox'];
foreach($num
as
$v){
$sql="delete
from
aa
where
id
=".$v;
$aa=mysql_query($sql);
echo
"<script
language='javascript'>location.href='www..com';</script>";
}
}
?>
<input
type='checkbox'
name='checkbox[]'
value='aaa'>
<input
type='checkbox'
name='checkbox[]'
value='bbb'>
<input
type='button'
value='全選'
onClick="this.value=check('checkbox[]')">
<script>
var
checkflag
=
"false";
function
check(fieldName)
{
var
field=document.getElementsByName(fieldName);
if
(checkflag
==
"false")
{
for
(i
=
0;
i
<
field.length;
i++)
{
field[i].checked
=
true;
}
checkflag
=
"true";
return
"全選";
}else
{
for
(i
=
0;
i
<
field.length;
i++)
{
field[i].checked
=
false;
}
checkflag
=
"false";
return
"全選";
}
}
</script>
Ⅲ 如何正確實現PHP與Javascript交互
可以用ajax非同步請求;js的ajax方法請求php處理的方法,然後返回數據,js裡面接收處理服務端返回的數據,如:
$.ajax({
type:"post",
url:php後台處理的方法,
dateType:"json",
data:{'參數1':值1...},//前端參數傳遞到後台
success:function(data){
//data為後台處理後返回的數據,接收處理
}
});
Ⅳ 如何把一個js變數傳給php變數
js僅在 瀏覽器中運行.
php 僅在伺服器端運行.
2者交互, 通常通過 http get/post 協議進行交互.
因此, 要將 js 變數傳輸到 php, 需通過 get/post 將參數傳入.
譬如:
<script>
function test(){
var x="abc";
$.ajax("test.php?x="+x);
}
</script>
而 test.php 中, 通過 $_REQUEST["x"] 即可拿到js 請求過來的變數.
追問
感覺你的答案最符合我的需求,只是我還是碰到了問題。
test.php文件中
onchange事件觸發test()函數,並將賦值。
<script>
function test(){
var x="abc";
$.ajax("test.php?x="+x);
}
test.php文件中
echo $_REQUEST["x"]並未獲取到有效值。echo沒有輸出。
請問,這到底是什麼原因。
追答
是因為 <script> 中並沒有輸出由 php 傳回的結果.
改成這個試試看.
1
2
3
4
5
6
<script>
function test(){
var x="abc";
$.ajax("test.php?x="+x),null,function(data){alert(data)});
}
</script>
Ⅳ PHP與JS對接的問題,有前端頁面(html的)和後端頁面(PHP的),JS怎麼獲取後台數組
這個當然是推薦ajax操作:
前端:
$.ajax({ url: "api.php", success: function(res){
for(var i in res){
$('#id').append(res[i])
}
}
});
後台 echo json_encode($array)
Ⅵ php和js互相調用,php中有一個數組,在html有一個按鈕,按鈕調用js函數的時候會傳一個數字參數
那就只能使用ajax了!也就是按鈕觸發js函數後, ajax再次非同步執行一次php並返回結果而進行後續操作!
或者頁面執行的時候, 直接將php數組輸出js格式的json數據,也行!
比如:
<?php
$arr=array(
array('a'=>'abc'),
array('a'=>'bcds')
);
?>
<script>
vararr=<?phpechojson_encode($arr)?>;
functionmods(num){
//你自己的操作,下面只是測試而已
alert(arr[num].a);
//arr[num].a就是你要的值
}
</script>
<buttontype="botton"onClick="mods(0)">按鈕</button>
Ⅶ PHP如何調用JS函數並獲取其返回的數據
人家問的是PHP調用JS函數。。。樓主,我可以很負責的告訴你,這是不可能的。PHP是在
伺服器端
運行的腳本,而JS是在瀏覽器運行的腳本,你要調用可以,直接echo個script就可以,但是獲取
返回值
是不可能的,只有讓JS把返回值通過AJAX發送給PHP才可以。
Ⅷ PHP如何與JS進行交互
PHP的所有應用程序都是通過WEB伺服器(如IIS或Apache)和PHP引擎程序解釋執行完成的,工作過程: (1)當用戶在瀏覽器地址中輸入要訪問的PHP頁面文件名,然後回車就會觸發這個PHP請求,並將請求傳送化支持PHP的WEB伺服器。 (2)WEB伺服器接受這個請求,並根據其後綴進行判斷如果是一個PHP請求,WEB伺服器從硬碟或內存中取出用戶要訪問的PHP應用程序,並將其發送給PHP引擎程序。(3)PHP引擎程序(一般為PHP.exe)將會對WEB伺服器傳送過來的文件從頭到尾進行掃描並根據命令從後台讀取,處理數據,並動態地生成相應的HTML頁面。 (4)PHP引擎將生成HTML頁面返回給WEB伺服器。WEB伺服器再將HTML頁面返回給客戶端瀏覽器。 以後在PHP中需要用到相關的內容,可以非常容易的使用js技術加上PHP了。
Ⅸ js和PHP前台交互相關問題
用ajax 抄了以前的一段代碼,你看看吧
select name="classname" id="classname" style="WIDTH: 130px" onchange="getCategory(this.value);">
<script language="javascript" src="/script/script_jquery.old.js"></script>
<script language="javascript" type="text/javascript">var j= jQuery.noConflict(true);</script>
<option value="0">--請選擇--</option>
<!--{loop $_SGLOBAL['category'] $key $value}-->
<option value="{$key}">{$value}</option>
<!--{/loop}-->
</select>
<select name="classname2" style="WIDTH: 130px" id="classname2">
<option value="0">--請選擇--</option>
</select>
js:
//獲取二級分類
function getCategory(classid){
j.get("./xin/xin_ajax_category.php",{classid:classid},function(data){
var results=eval("("+data+")");
var list = document.getElementById("classname2");
list.options.length = 0;
list.options.add(new Option("--請選擇--","0"));
for (var i = 0; i < results.length; i++) {
list.options.add(new Option(results[i].childname,results[i].childid)); //text ,value
}
});
}
xin_ajax_category.php:
<?php
include_once('../common.php');
$classid=intval($_REQUEST['classid']);
//flag
if(!empty($classid)){
$category_arr="";
$sql="SELECT b.childid,b.childname FROM `xin_works_category_class` a, `xin_works_category_child` b WHERE a.classid=b.pid and a.classid=$classid order by a.classid ,b.childid";
$handle=$_SGLOBAL['db']->query($sql);
while($value=$_SGLOBAL['db']->fetch_array($handle)){
$value['childname']=convertToUTF8($value['childname']);
$category_arr[]=$value;
unset($value);
}
unset($handle);
//print_r($category_arr);
echo json_encode($category_arr);
}
?>