php一個小問題

來源:互聯網
上載者:User
有一個function a($a){

}

echo ""

該怎麼寫??
為什麼我寫出來的執行不了呢

回複內容:

有一個function a($a){

}

echo ""

該怎麼寫??
為什麼我寫出來的執行不了呢

HTML不能使用PHP層面的函數

echo到頁面的是一段html文本,這個時候input.submit觸發的a()是頁面中的javascript函數,你在php裡定義的a()是調用不了的

onclick是瀏覽器的一個事件,能調用一個JS函數,但不能調用PHP函數,因為PHP解譯器是在伺服器.所以你可以這樣,onclick後調用一個JS函數,這個JS函數向PHP伺服器發出AJAX請求,這時你就可以編寫PHP函數來響應並返回資料給瀏覽器了.AJAX操作建議使用jQuery庫的$.post()和$.get()來進行.

前後端分清楚,
如果是希望用戶端click時才調用執行那個函數,
那麼函數就要寫成js的,onclick裡面調用js函數,
如果是伺服器運行那個函數,onclick裡面的東西在頁面載入出來就是固定的了,

php是在伺服器端執行的,javascript是在用戶端執行的。雖然代碼寫在一起,但執行時間不一樣。

你可以用php在頁面中輸出javascript來給前端變數賦值。
也可以用javascript請求url介面的方式來執行php在後端封裝好的方法。

代碼的執行順序是先在服務端執行PHP代碼,由PHP輸出String類型的HTML代碼到用戶端,此時PHP執行完了就不能再執行任何PHP代碼的,然後接下來的事情就交給瀏覽器、JS、CSS等來渲染解析執行了。。。
你可以在HTML中用JS移植你的PHP函數,然後執行JS函數,比如:

/*HTML*/
/*JS*/function test(a){    console.log(a);}

一般html調用的函數在js裡面

如果題主看完前面的答案,已經分清了前端指令碼和後端指令碼。
那麼現在的需求用ajax應該能夠實現

在瀏覽器裡面是沒有php代碼的。php先對檔案進行解析,產生html檔案,然後瀏覽器拿到的html檔案裡面一行php代碼都沒有。當然不能執行了。

echo "";

應該是這麼寫吧。
form中input type是submit的時候點擊會提交這個form,你可以把type='submit'改成type='button'

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.