【发布时间】:2013-11-28 01:57:36
【问题描述】:
只是试图从按“cnt”排序的“guesses”表中获取所有内容并将其转换为 javascript 数组。但是,它无法给我任何我可以使用的东西。
PHP 文件:
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'root';
$dbname = 'words';
$dbtable = 'guesses';
//------ DATABASE CONNECTION --------//
mysql_connect($dbhost,$dbuser,$dbpass)
or die ("Unable to connect to database");
mysql_select_db($dbname)
or die ("Unable to select database");
$sql = "SELECT * FROM $dbtable ORDER BY cnt ASC";
$result = mysql_query($sql);
while($array = mysql_fetch_assoc($result)) {
echo json_encode($array);
}
?>
JavaScript:
$.getJSON('grab.php', function(response) {
// response is a JSON object that contains all the info from sql query
// tried so much stuff here... no avail.
console.log(response);
})
控制台什么也没说。 phpmyadmin 控制台中的“SELECT * FROM guesses ORDER BY cnt ASC”确实返回正确的条目和顺序。
编辑:我也试过了
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'root';
$dbname = 'words';
$dbtable = 'guesses';
//------ DATABASE CONNECTION --------//
mysql_connect($dbhost,$dbuser,$dbpass)
or die ("Unable to connect to database");
mysql_select_db($dbname)
or die ("Unable to select database");
$sql = "SELECT * FROM $dbtable ORDER BY cnt ASC";
$result = mysql_query($sql);
while($array = mysql_fetch_assoc($result));
echo json_encode($array);
?>
这可能在语法上更好(???)但它返回“false”到控制台,没有别的。
【问题讨论】:
-
你在 dbtable 中的字段是什么
-
id、word、cnt是我的三个字段
-
alert(response.Id) 有什么作用吗?
-
只能向客户端发送一个 json 字符串,每次循环都在发送
-
alert(response.id) 返回未定义
标签: javascript php mysql sql json