靜態頁面中看上去好像是不能直接調用php文件的,但是卻可以使用js調用方式來調用php文件,當然還可以使用ajax 調用php文件,下面就來給大家介紹一下:
舉一個簡單的例子來說明:
如在頁面a.html中用下面這句調用,可以將action=test的參數傳遞到b.php。
Javascript代碼
<script type="text/javascript" src="b.php?action=test"></script>
在b.php中有這樣一段PHP代碼:
<?php $action=$_GET['action']; echo "document.write('".$action."');n"; ?>
當執行a.html文件時,就會調用b.php文件,並將b.php文件的輸出作為JS語句來執行,內容為JS傳遞的參數action的值,也就是在PHP文件中接受過來的action的值.
jquery的load函數是請求另一個文件並加載到當前DOM裡的調用
1、加載一個php文件,該php文件不含傳遞參數
$("#myID").load("test.php");
2、加載一個php文件,該php文件含有一個傳遞參數
$("#myID").load("test.php",{"name" : "Adam"});
3. 加載一個php文件,該php文件含有多個傳遞參數。注:參數間用逗號分隔
$("#myID").load("test.php",{"name" : "Adam" ,"site":www.shouce.ren});
//導入的php文件含有一個傳遞參數,類似於:test.php?name=Adam&site=www.shouce.ren
4. 加載一個php文件,該php文件以數組作為傳遞參數
$("#myID").load("test.php",{'myinfo[]', ["Adam", www.shouce.ren});
//導入的php文件含有一個數組傳遞參數。
1 JS方式調用PHP文件並取得php中的值
舉一個簡單的例子來說明:
如在頁面a.html中用下面這句調用:
<script type="text/javascript" src="b.php?action=test"></script> <script type="text/javascript" > alert(jstext); </script>
在b.php中有這樣一段PHP代碼:
<? $action=$_GET['action']; //echo "var jstext='$action'"; //輸出一句JS語句,生成一個JS變量,並賦顛值為PHP變量 $action的值 //echo "var jstext='aa'"; echo "var jstext="."'$action'"; ?>
當執行a.html文件時,就會調用b.php文件,並將b.php文件的輸出作為JS語句來執行,所以此處會彈出一個提示框,內容為JS變量jstext的值,也就是在PHP文件中賦給jstext的值.
小結:
在HTML裡用JS 調用文件的方式調PHP文件,則PHP文件的輸出將會被調用頁作為JS的代碼來用.
2 php調用js中的值
在z.php頁面中有這樣一段代碼:
<script type="text/javascript" > var url="aaaa*"; </script> <? $key="<script type=text/javascript>document.write(url)</script>"; echo $key; ?>
3 php調用js中的方法(函數)
<script type="text/javascript"> function test() { var t1=3; t1 = t1+2; alert(t1); //return t1; } </script>
<?php echo "<script type='text/javascript'>test();</script>"; ?>
4 JS調用PHP變量
(1)
<?php
$userId=100;
?> <script>
var userId;
userId=document.getElementByIdx_x_x_x("userId").value;
alert (userId);
</script>
<input type="text" name="userId" id="userId" value="<?php echo $userId; ?>">
(2)
<?php
$url = '變化的網址'; //定義變量
?>
<script type="text/javascript">
//js調用php變量
var ds ="<?php echo $url?>" ; //賦值 alert(ds); //輸出效果 </script>
5 -------------------------------
<script language="JavaScript"> <!--
var Y=<?php echo date('Y')?>,M=<?php echo date('n')?>,D=<?php echo date('j')?>;
-->
</script>
6 自己寫的js和php互相調用
1.php內容:
<?php //echo "<script LANGUAGE='javascript'>alert('$php變量');</script>"; //最簡單的php調用js //echo "<a href=#><img width=50 src='$fruit_pic_array[$i]' onMouseOver=’javascript:a();‘></a>"; //echo "<a href='3.php'>aaaa</a>"; //php中超鏈接 //echo "<script type='text/javascript' language='javascript'>phpmake('PHP建站學習筆記網');</script>"; //有時候需要在PHP執行過程中,需要調用JavaScript自定義函數(驗證時出錯) echo "function ok(msg){alert(msg);}"; ?>
<HTML> <HEAD> <TITLE> php調用js文件的好辦法</TITLE> </HEAD> <BODY> <!--js調用php中定義的js--> <scrīpt language=''javascrīpt'' type=''text/javascrīpt'' src=''1.php''></scrīpt> <scrīpt> ok("aaaaaa!"); </scrīpt> </script> </BODY> </HTML>
2.php內容:
<!--js調用php--> <?php $userId=100; ?> <script> var userId; userId=document.getElementByIdx_x("userId").value; alert (userId); </script> <input type="text" name="userId" id="userId" value="<?php echo $userId; ?>"> <!--js調用php--> <?php if($_GET["action"]=="ok") { echo "I'm OK!"; } else { echo "I'm not OK!"; } ?>
<SCRIPT Language = "JavaScript"> function func() { if(confirm("Are you OK with this?")) { this.location = "ok.php?action=ok"; } else { this.location = "ok.php?action=cancel"; } } </SCRIPT>
<html> <head> </head> <body> <a href="#" href="#" onClick="javascript:func();">Please Click</a> </body> </html>
<!--js調用php--> <html> <head> <script> function isMail(PostString) { re=/\w*/ if(re.test(PostString)) { return true; } else { return false; } } function test(){ if (isMail(<?php echo $email?>)) {document.write("<?php echo "N";?>");} else {document.write('<?php echo 'Y';?>');} } </script> </head> <body> <?php $email="aa"; ?> <input type=button value=click onclick= 'test() '> </body> </html>
<!--php中含有js代碼--> <?php echo " <script language=javascript> function test(){ alert( 'hello '); } </script> "; ?> <input type=button value=click onclick= 'test() '>