php給javascript傳值,算是兩個(gè)方法吧,
10余年的江西網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整江西建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“江西網(wǎng)站設(shè)計(jì)”,“江西網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
一個(gè)就是主動(dòng)刷新,php把值寫到頁面上,比如 var a='?php echo $a;?';
另外的方法就是通過js異步去拉取,通過ajax來實(shí)現(xiàn),大體過程是:js 發(fā)起一個(gè)異步請(qǐng)求給php程序,php返回?cái)?shù)據(jù)庫的數(shù)據(jù),js通過接收這個(gè)數(shù)據(jù)來在做處理。
PHP中并不能直接獲得JS的值,因?yàn)橐粋€(gè)運(yùn)行在客戶端,一個(gè)運(yùn)行在服務(wù)器端。如果需要這兩個(gè)語言進(jìn)行交流,可以這么做:
對(duì)于JS向PHP傳遞,可使用cookie,查詢字符串(get),post
對(duì)于PHP向JS傳遞可以直接將值輸出到JS的變量值處;或者將值輸出給隱藏的input元素,然后從dom獲?。换蛘呃胊jax獲取
要用javascript調(diào)用php獲取數(shù)據(jù)庫接口,是一個(gè)很常見的前后端交互操作
通過javascript發(fā)送http請(qǐng)求php的API接口,php連接數(shù)據(jù)庫并查詢結(jié)果,最后返回出來
這樣javascript就能獲取到數(shù)據(jù)庫的數(shù)據(jù)
人家問的是PHP調(diào)用JS函數(shù)。。。樓主,我可以很負(fù)責(zé)的告訴你,這是不可能的。PHP是在
服務(wù)器端
運(yùn)行的腳本,而JS是在瀏覽器運(yùn)行的腳本,你要調(diào)用可以,直接echo個(gè)script就可以,但是獲取
返回值
是不可能的,只有讓JS把返回值通過AJAX發(fā)送給PHP才可以。
可以使用ajax技術(shù)實(shí)現(xiàn)動(dòng)態(tài)提交和返回,不用刷新頁面的所有內(nèi)容?;敬a如下,可以酌情參考和修改:
function showDate()
{
var xmlhttp;
var d = new Date();
if (window.XMLHttpRequest)
{
// IE7+, Firefox, Chrome, Opera, Safari 瀏覽器執(zhí)行代碼
xmlhttp=new XMLHttpRequest();
}
else
{
// IE6, IE5 瀏覽器執(zhí)行代碼
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 xmlhttp.status==200)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getdate.php?q="+d,true);
xmlhttp.send();
}