问题包括php中的外部js脚本

时间:2011-05-31 09:54:03

标签: php javascript

所以请考虑我是新手。我目前在整个页面中使用以下脚本来显示时间:

var currenttime = '<? print date("F d, Y H:i:s", time())?>' //PHP method of getting server date
    var montharray=new Array("January","February","March","April","May","June","July","August","September","October","November","December")
    var serverdate=new Date(currenttime)

    function padlength(what){
    var output=(what.toString().length==1)? "0"+what : what
    return output
    }

    function displaytime(){
    serverdate.setSeconds(serverdate.getSeconds()+1)
    var datestring=montharray[serverdate.getMonth()]+" "+padlength(serverdate.getDate())+", "+serverdate.getFullYear()
    var timestring=padlength(serverdate.getHours())+":"+padlength(serverdate.getMinutes())+":"+padlength(serverdate.getSeconds())
    document.getElementById("servertime").innerHTML=datestring+" "+timestring
    }

    window.onload=function(){
    setInterval("displaytime()", 1000)
    }

并使用以下html显示它:

<div id="header"><span class="time" id="servertime"></span></div>

我认为我可以做的,而不是在每个页面的<head>中使用相同的脚本,将脚本放在外部.js文件中并使用以下内容包含它:

<script type="text/javascript" src="live_clock.js"></script>

现在我的根是...... / ece70141 /

我刚刚把它放在同一个目录(.js文件和其他目录)中,只是为了让它工作。然而它不起作用。有人可以告诉我如何正确地做到这一点吗?

非常感谢,

2 个答案:

答案 0 :(得分:1)

您必须通过PHP提供JavaScript文件,否则将无法解析<? print date("F d, Y H:i:s", time())?>

可能只需将.php设置为文件后缀(而不是.js)并添加

<?php 
    header('Content-type: text/javascript');
    // or  header('Content-type: application/javascript');
?>

在顶部。

答案 1 :(得分:0)

我会说你应该这样做:

<script>
     var currenttime = '<?php echo date("F d, Y H:i:s", time()); ?>'
</script>
<script src="/your/path/to/the/javascript.js"></script>