php javascript html,为什么不;t这项工作


php javascript html, why doesn't this work?

这是我的代码。我正试图连接到我的数据库,制作一个"当天的笑话",所以它每天都会显示不同的笑话。我已经查看了我的代码好几次了,但都找不出为什么它不起作用。

<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>

首先修复此问题:

var x=new Date();
var d(d.getDay());

var x = new Date();
var d  = x.getDay();

第二,每次你有这个document.write(jokesArray[1];,你都不会关闭它,就像这样:

document.write(jokesArray[1]);

与其执行HUGEif语句块,不如执行此操作,这是相同的。

document.write(jokesArray[d]);

所有的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]);
}

希望这能帮助

PHP有一个getdate()函数。请参阅此处的文档。在PHP代码中使用日期条件,而不是在javascript中,然后在需要的地方简单地使用"echo-jokesary[x]"。

好的,我想明白了。我的数据库有问题。我在值中有撇号和破折号,所以它把代码的其余部分搞砸了。无论如何,谢谢!