2014-01-22 109 views
-3

我在這裏有一個代碼...它不工作......我不認爲這是從PHP獲取數據的正確方法。如何連接php到javascript

「我怎樣才能將生日事物寫入JavaScript代碼?」

<?php 
include("../../connect.php"); 
    $yup=mysql_query("SELECT * FROM user_accounts WHERE stud_id='2'"); 
    while($up=mysql_fetch_array($yup)) 
     { 
      echo"$up[birthdate]"; 
     } 

?> 

<script> 
    CountDownTimer('$up[birthdate]', 'countdown'); 
    function CountDownTimer(dt,id) 
    { 

     var end = new Date(dt); 

     var _second = 1000; 
     var _minute = _second * 60; 
     var _hour = _minute * 60; 
     var _day = _hour * 24; 
     var timer; 

     function showRemaining() { 
      var now = new Date(); 
      var distance = end - now; 
      if (distance < 0) { 

       clearInterval(timer); 
       document.getElementById(id).innerHTML = 'EXPIRED!'; 

       return; 
      } 
      var days = Math.floor(distance/_day); 
      var hours = Math.floor((distance % _day)/_hour); 
      var minutes = Math.floor((distance % _hour)/_minute); 
      var seconds = Math.floor((distance % _minute)/_second); 

      document.getElementById(id).innerHTML = days + 'days '; 
      document.getElementById(id).innerHTML += hours + 'hrs '; 
      document.getElementById(id).innerHTML += minutes + 'mins '; 
      document.getElementById(id).innerHTML += seconds + 'secs'; 
     } 

     timer = setInterval(showRemaining, 1000); 
    } 

</script> 
<div id='countdown'></div> 
+3

強制性建議,[**不要在新代碼'mysql_ *'功能**](http://bit.ly/phpmsql)。他們不再被維護[並且被正式棄用](http://j.mp/XqV7Lp)。看到[**紅框**](http://j.mp/Te9zIL)?學習[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。如果你選擇PDO,[這裏是一個很好的教程](http://j.mp/PoWehJ)。 –

+1

可憐的user3219866,他所有的問題都是downvoted,但user3219866只在2天前註冊。 –

+0

MySQLi ...!好吧,, – user3219866

回答

1

如果你有一些生日從數據庫(它看起來是這樣)來的,你可以建立從數據庫結果的PHP數組,輸出,作爲一個JSON數組。

在PHP:

$result = array(); 
while($up=mysql_fetch_array($yup)) 
     { 
      array_push($result, $yup); 
     } 

然後,在適當的位置(像<head>):

<script> 
dates = <? echo json_encode($result); ?>; 
</script> 
1

要在文檔的其餘部分使用變量來自PHP,你需要使用PHP標籤。因此, CountDownTimer('$ up [birthdate]','countdown');應該

CountDownTimer(<?php echo($up['birthdate']); ?>, 'countdown'); 

,或者甚至更好:

CountDownTimer(<?=$up['birthdate']?>, 'countdown');