請告訴我這段代碼出錯了。
好,.PHP腳本由服務器執行,以前結果發送給用戶。包裝它在<script>
</script>
不會幫助。所以,你的代碼流程是這樣的:
→ Serverside集團,PHP:
<?php
...
?>
<script>
function secondPassed() {
document.getElementById('time').value = parseInt(document.getElementById('time').value) + 1;
int val = 0;
num = "<?php
$insert = mysql_query('INSERT INTO tbl_timer VALUES(\'\', \"."$val".\" )',$connection);
// error notice (probably suppresed), there is no $val variable defined...
// If somethig _will_ be inserted, it will contain just (0) or ("")
?>";}
</script>
→客戶端,HTML:
...
<script>
function secondPassed() {
document.getElementById('time').value = parseInt(document.getElementById('time').value) + 1;
int val = 0;
num = "0";}
</script>
而且當瀏覽器執行的是<script>
,它只會存儲遞增值在#time
,沒有別的。
如果您希望將某些內容從javascripts傳遞到服務器,則必須向服務器發送請求,總是。這是合乎邏輯的。
所以,作爲@adeneo建議,你要麼必須使用:
ajax
請求(aynchronous /同步)。
- 餅乾(同步,重新加載頁面將需要通過cookie來服務器)
- 套接字(異步/同步,並有大量插座相關的解決方案)
iframe
S(異步,可引起不必要的副作用)。
- 根本不要使用服務器端數據庫(如果適用)。只需使用瀏覽器的
localStorage
或類似的。
您要麼使用ajax,要麼重新加載頁面,要麼使用套接字,或者其他任何可以實際將數據發送到服務器的東西。 – adeneo
但我只需要使用javasrcipt。 –
你不能,PHP在服務器上運行,它已經完成了它的工作,它將HTML發送給用戶瀏覽器,這就是JavaScript運行的地方。不用說,在頁面到達用戶瀏覽器的時候,用PHP做任何事情已經太遲了,現在你必須發出請求並把東西發回服務器再次使用PHP。 – adeneo