[請益] php與javascript之間的傳值

看板PHP作者 (wow)時間15年前 (2009/04/10 12:12), 編輯推噓2(209)
留言11則, 8人參與, 最新討論串1/1
今天寫了一個時鐘程式 發現了一件有趣的事情 php傳值到js的時候 只能傳數字(int float都行) 且會自動消去leading zeros 以下是我的code <?php date_default_timezone_set('Asia/Taipei'); $system_time_year=date("Y"); $system_time_month=date("n"); $system_time_day=date("j"); $system_time_AP_temp=date("a"); $system_time_hour=date("g"); $system_time_min=date("i"); $system_time_sec=date("s"); if($system_time_AP_temp=="am") $system_time_AP=1; if($system_time_AP_temp=="pm") $system_time_AP=2; ?> function system_time() { system_time_year=<?php echo($system_time_year) ?>; system_time_month=<?php echo($system_time_month) ?>; system_time_day=<?php echo($system_time_day) ?>; system_time_AP_temp=<?php echo($system_time_AP) ?>; system_time_hour=<?php echo($system_time_hour) ?>; system_time_min=<?php echo($system_time_min) ?>; system_time_sec=<?php echo($system_time_sec) ?>; if(system_time_AP_temp==1) system_time_AP="上午"; if(system_time_AP_temp==2) system_time_AP="下午"; real_time="現在系統時間為 "+system_time_year+" 年 "+system_time_month+" 月 " +system_time_day+" 日 "+system_time_AP+" "+system_time_hour+" 點 " +system_time_min+" 分 "+system_time_sec+" 秒"; document.form.button.value=real_time; setTimeout("system_time()", 1000); } 我想將php傳過來的時間用js的方法顯示(用一個button顯示) 卻發現setTimeout似乎無法動作(時間不會自行更新) 不過如果隨便用一個變數去測 會發現setTimeout其實是在動作的 是因為php與js之間的傳值有某些原因導致的嗎 希望不會詞不達意 請先進指點@@ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.163.168.160

04/10 12:57, , 1F
要先call一次system_time()才會啟動setTimeout(...);
04/10 12:57, 1F

04/10 13:00, , 2F
你在瀏覽器打開原始碼就會知道問題在哪了..
04/10 13:00, 2F

04/10 13:02, , 3F
system_time()我有再call一次@@
04/10 13:02, 3F

04/10 14:22, , 4F
正式確定不行 其他變數都可動作 唯php傳來的不行
04/10 14:22, 4F

04/10 14:31, , 5F
<script>跟</script>之間不能有任何PHP Code!
04/10 14:31, 5F

04/10 14:51, , 6F
view source+1 ; 加引號吧..
04/10 14:51, 6F

04/10 16:54, , 7F
只能傳數字?沒有加引號不是數字是什麼?
04/10 16:54, 7F

04/10 17:20, , 8F
習慣用 var xx = parseInt("<?=$xxx;?>"); 比較穩當.
04/10 17:20, 8F

04/10 18:00, , 9F
抱歉我收回我錯誤的話~~~<script>間可以允許PHP Code
04/10 18:00, 9F

04/17 21:04, , 10F
時間當然不變 php一開始run完一次source code就固定
04/17 21:04, 10F

04/17 21:05, , 11F
之後js的timer不管run幾次都是去讀固定的值
04/17 21:05, 11F
文章代碼(AID): #19tiSrow (PHP)