使用php、ajax和mysql的随机报价生成器

使用php、ajax和mysql的随机报价生成器,php,javascript,jquery,html,ajax,Php,Javascript,Jquery,Html,Ajax,我尝试使用和生成一个随机引用生成器,但它没有显示任何内容。我的问题是: 我的代码有什么问题 在上面的图坦卡蒙中,报价是通过点击按钮生成的,我想 每个月显示的随机报价 自动30分钟。我该怎么办 这个 //////////////////////// quote.html: <!DOCTYPE html> <script src="ajax.js" type="text/javascript"></script> <body> <!–cre

我尝试使用和生成一个随机引用生成器,但它没有显示任何内容。我的问题是:

  • 我的代码有什么问题

  • 在上面的图坦卡蒙中,报价是通过点击按钮生成的,我想 每个月显示的随机报价 自动30分钟。我该怎么办 这个

////////////////////////

quote.html:

<!DOCTYPE html>
<script src="ajax.js" type="text/javascript"></script>
<body>

<!–create the div for the quotes land–>
<div id="quote"><strong>this</strong></div>
<div><a style="cursor:pointer" onclick="run_query();">Next quote …</a></div>

</body>
</html>

尝试打印$max、$rand和$result的值。您可以使用print\r从php页面获取更多信息

在浏览器上运行quote.php以查看是否获得输出。 然后使用ajax进行调试

您可以使用ajax中的计时器每隔30分钟左右自动执行一次请求。为此使用javascript的settimeout函数


HTH

尝试打印$max、$rand和$result的值。您可以使用print\r从php页面获取更多信息

在浏览器上运行quote.php以查看是否获得输出。 然后使用ajax进行调试

您可以使用ajax中的计时器每隔30分钟左右自动执行一次请求。为此使用javascript的settimeout函数


HTH

只是一个建议,“quote.php”文件可以简化为
select*from quotes limit 1 order by rand()
Hey!只是一个建议:您可以使用JavaScript数组来简化操作。MySQL很好,但是对于显示如此少量的数据来说有点太多了。另外,onClick有点老派,我建议尝试一下jQuery,处理程序和基于CSS的命名系统都是奇迹,我试过了。没有显示任何内容。凯尔,你能给我举个例子吗?mysql中的quotes数据库不是一个小数据量,我不想在javascript数组中手动键入100个引号。有什么建议吗?只是一个建议,“quote.php”文件可以简化为
select*from quotes limit 1 order by rand()
Hey!只是一个建议:您可以使用JavaScript数组来简化操作。MySQL很好,但是对于显示如此少量的数据来说有点太多了。另外,onClick有点老派,我建议尝试一下jQuery,处理程序和基于CSS的命名系统都是奇迹,我试过了。没有显示任何内容。凯尔,你能给我举个例子吗?mysql中的quotes数据库不是一个小数据量,我不想在javascript数组中手动键入100个引号。有什么建议吗?我在浏览器上运行了quote.php,但没有得到任何输入。我的php代码有什么问题吗?有什么数据可以开始吗?我认为您需要进行调试以了解发生了什么。我在浏览器上运行了quote.php,但没有收到任何输入。我的php代码有什么问题吗?有什么数据可以开始吗?我认为您需要调试以了解发生了什么。
<?php
include 'config.php';

// 'text' is the name of your table that contains
// the information you want to pull from
$rowcount = mysql_query("select count(*) as rows from quotes");

// Gets the total number of items pulled from database.
while ($row = mysql_fetch_assoc($rowcount))
{
 $max = $row["rows"];
}

// Selects an item's index at random 
$rand = rand(1,$max)-1;
$result = mysql_query("select * from quotes limit $rand, 1");

$row = mysql_fetch_array($result);
$randomOutput = $row['storedText'];

echo '<p>' . $randomOutput . '</p>';
var xmlHttp


function run_query() {
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null) {
alert ("This browser does not support HTTP Request");
return;
} // end if
var url="quote.php";
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
} //end function

function stateChanged(){
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
document.getElementById("quote").innerHTML=xmlHttp.responseText;
} //end if
} //end function

function GetXmlHttpObject() {
var xmlHttp=null;
try {
// For these browsers: Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}catch (e){
//For Internet Explorer
try{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
} //end function