Ajax應該也不能傳值給PHP吧,
不過應該可以達到你的需求,
因為PHP是後端語言,
後端語言是運行在Server端,
JavaScript是前端語言,
前端語言是運行在Client端,
先在Server端編譯完後,
才將結果傳給Client端,
這是在兩台不同的電腦進行的,
(正常來說、除非是在Server所在的電腦開網頁、但還是要將Server跟Client的觀念釐清)
所以沒辦法JS傳值給PHP,
不過可以使用上面大大說的Ajax的方法,
Ajax其實是去跟Server端要資料,
當然你在Server端要先將程式寫好,
要到資料之後其實還是要用jQuery或JavaScript的方式處理,
不是使用PHP的語言處理,
以上說法是小弟小小的心得,
如果有錯誤或要補充的,
也歡迎大家批評指教。
其實就行為上你要在同一個頁面處理掉你說的「 不要丟到別的page再回來 」,是可行的
你的解法要往兩個地方處理
1.前端的js,而且一定要用ajax for post到你指定的頁面
2.後端你圈起來的地方要驗證是否為POST動作
php code example
<?php
if (isset($_POST['your_set_key']) && $_POST['your_set_key'] == 'XXXXXX') {
// running your code...
// response header for js
}
?>
會說在行為上是可行是因為
在瀏覽器一般行為的存取都是GET,而你要在同一個頁面要處理不同動作而產生的結果就要有所區隔,
不然你瀏覽器一開,不就全部都執行下去了
不過...實務上分開兩個頁面會比較好是因為,你的邏輯跟業務,兩個行為分開比較好維護,
以後要翻新功能是也不會恨自己當初為啥沒有分開處理。
這個問題,你得先了解何謂前端,何謂後端。
後端php程式碼,其實並不會在html頁上。
一般的運做原理是將php的程式碼跑完後。組譯成html碼再回傳給瀏覽器上運行。
所以php才叫做後端。
依照你的說法,你似乎是將前後端搞在一起想一起跑的感覺。
如果我的理解沒錯,你是希望跑前端js來去修改後端的參數值。
這如果依照你的想法,是不可能做到的。
因為一但來到前端了。其php的值都是已經固定產生出來了。也已經解譯成html碼了。
你可以從瀏覽器的原始碼看一下,一定不會有這類的東西。
所以,你要了解前端與後端的特性。