2013-04-16 49 views
0

我遇到了如何在php中回顯javascript的問題。我有一個提交的表單將自己執行並回顯一些文本,並將重定向到5secs的頁面。我目前與此相呼應:如何在php中回顯javascript代碼

header("Refresh: 5;url=index2.php?ID=".$objResult["ID"].""); 

echo '<html>'; 
echo '<head>'; 
echo '<title>Klant toevoegen</title>'; 
echo '<link rel="stylesheet" href="style.css" type="text/css" media="screen" />'; 
echo '</head>'; 
echo '<body>'; 
echo '<fieldset>'; 
echo ''.$Naam.' is added to the database, u will be redirected in a couple of seconds.<br><br>'; 
echo '</fieldset>'; 
echo '</body>'; 
echo '</html>'; 

的JavaScript我已經是倒計時從5比1的代碼是這個倒計時:

<script> 

var countdownFrom = 5; // number of seconds 
var countdownwin; 

var stp; 
function CountDownStart() { 
stp = setInterval("CountDownTimer('CountDownTime')",1000) 
} 

function CountDownTimer(id) 
{ 
if (countdownFrom==0) {clearInterval(stp); window.close(); } 
else  { 
      var x 
      var cntText = "Closing in "+countdownFrom+" seconds"; 

     if (document.getElementById) 
    { 
     x = document.getElementById(id); 
     x.innerHTML = cntText;  } 
    else if (document.all) 
    { 
     x = document.all[id]; 
     x.innerHTML = cntText;  } 
    } 
countdownFrom-- 
} 

</script> 
    <title>Untitled</title> 
</head> 

<body onload="CountDownStart()"> 

<Div id="CountDownTime"></div> 

</body> 

現在我想響應這個倒計時腳本替換HTML中的<fieldset>。我已經嘗試了幾種方法,比如只需添加1 echo '';中的所有代碼,我試圖單獨回顯所有行,但是它們都會使我的整個腳本崩潰。如果有人知道如何做到這一點,那將非常棒!

+0

...,什麼是* *問題,你有? – deceze

+0

@deceze問題是我無法得到這個工作。隨着我嘗試過的東西崩潰了我的腳本。 – Daanvn

+0

「崩潰」如何?錯誤?什麼錯誤?另外,你爲什麼'迴應所有這些東西?只需打破PHP並明確寫下來。 – deceze

回答

3

我不會寫那些回聲的,而是把所有的HTML和JS的PHP塊外

<?php 
some php code 
?> 

HTML AND JS 

<?php 
More php if required 
?> 

並使用

<?=$Naam?> 

要注入自己的價值觀在需要

或者你應該考慮的模板引擎

0

你可以把這個腳本在一個單獨的.js文件和echo腳本標籤:

<? echo "<script type='text/javascript' src='path/to/script.js' ></script> ?> 

不要忘記從JS文件中刪除任何HTML標記,如<body><head>

2

嘗試使用

echo <<<EOT 
    /* some text here */ 
EOT;