这是我的代码。我正在尝试连接到我的数据库并制作一个“当天的笑话”,所以每天都会显示一个不同的笑话。我已经多次查看了我的代码,但却无法找出它无法正常工作的原因。
<div id="joke">
This is the Joke of the Day:
<script>
var jokesArray = new Array ();
<?php
$jokeid = 1;
$link = mysqli_connect("localhost","root","","nick-website-database") or die("Error " . mysqli_error($link));
$temp = mysqli_query($link, "SELECT * FROM `jokes`");
$i = 0;
while($joke = mysqli_fetch_array($temp)) {
echo "jokesArray[".$i."]='" . $joke["description"]."';" ;
$i++;
}
?>
var x=new Date();
var d(d.getDay());
if (d === 0) {
document.write(jokesArray[0];
}
else if (d === 1) {
document.write(jokesArray[1];
}
else if (d === 2) {
document.write(jokesArray[2];
}
else if (d === 3) {
document.write(jokesArray[3];
}
else if (d === 4) {
document.write(jokesArray[4];
}
else if (d === 5) {
document.write(jokesArray[5];
}
else if (d === 6) {
document.write(jokesArray[6];
}
</script>
</div>
如果有人能尽快帮助,我们将非常感激!提前致谢
答案 0 :(得分:5)
首先解决这个问题:
var x=new Date();
var d(d.getDay());
到
var x = new Date();
var d = x.getDay();
其次,每次你拥有这个document.write(jokesArray[1];
时,你都没有关闭它,就像这样:
document.write(jokesArray[1]);
而不是做 HUGE if语句阻止,只需这样做,这是相同的。
document.write(jokesArray[d]);
答案 1 :(得分:3)
你的所有document.write只有一个开放式支架,你需要先关闭支架;
修改强> 同样解决这个问题,你的日期变量错误了
var x=new Date();
var d(d.getDay());
需要
var x = new date();
var d = x.getDay();
Javascript是一种有趣的语言,在某种意义上说,如此简单的东西会在不给你警告的情况下破解,尝试使用firefox来调试javascript。
示例:
Your Current Code:
if (d === 0) {
document.write(jokesArray[0];
}
else if (d === 1) {
document.write(jokesArray[1];
}
else if (d === 2) {
document.write(jokesArray[2];
}
else if (d === 3) {
document.write(jokesArray[3];
}
else if (d === 4) {
document.write(jokesArray[4];
}
else if (d === 5) {
document.write(jokesArray[5];
}
else if (d === 6) {
document.write(jokesArray[6];
}
你需要这样:
The Correct Code:
if (d === 0) {
document.write(jokesArray[0]);
}
else if (d === 1) {
document.write(jokesArray[1]);
}
else if (d === 2) {
document.write(jokesArray[2]);
}
else if (d === 3) {
document.write(jokesArray[3]);
}
else if (d === 4) {
document.write(jokesArray[4]);
}
else if (d === 5) {
document.write(jokesArray[5]);
}
else if (d === 6) {
document.write(jokesArray[6]);
}
希望这有帮助
答案 2 :(得分:2)
PHP有一个getdate()函数。请参阅文档here。在PHP代码中使用条件而不是javascript中的日期,然后只需“echo jokesarray [x]”就可以了。
答案 3 :(得分:-1)
好的,我想通了。这是我的数据库的问题。我在值中有撇号和破折号,因此它搞砸了其余的代码。不管怎样,谢谢!