Php Mysql选择进入数组
我基本上只是试图简单地从一个表中选择一个数组…但它不能正常工作 我有以下疑问Php Mysql选择进入数组,php,mysql,Php,Mysql,我基本上只是试图简单地从一个表中选择一个数组…但它不能正常工作 我有以下疑问 $graph = mysql_query("SELECT MONTHNAME(dateadded) MONTH, COUNT(*) COUNT FROM products WHERE ((YEAR(dateadded)=2012) && (site_url = '$_GET[site_url_graph]')) GROUP BY MONTH(dateadded)",$db); 我需要将结果放在这样的数
$graph = mysql_query("SELECT MONTHNAME(dateadded) MONTH, COUNT(*) COUNT
FROM products
WHERE ((YEAR(dateadded)=2012) && (site_url = '$_GET[site_url_graph]'))
GROUP BY MONTH(dateadded)",$db);
我需要将结果放在这样的数组中(可以是长月份名称,也可以是短月份名称,这不是问题):
我正在尝试,但得到的信息不是数组:
$data = array();
while($graphData = mysql_fetch_array($graph)){
$data[] = $graphData;
}
我相信这是一个简单的修复,但在这里撕裂头发 也许这就是问题所在:
“
COUNT(*)COUNT
”?
尝试将其更改为
COUNT(*)
要获得预期的数组,您需要按照以下方式更改代码
$data = array();
while($graphData = mysql_fetch_array($graph)){
$data[$graphData['MONTH']] = $graphData['COUNT'];
}
所以,基本上这是你想要的快速和轻松的版本。注意list的用法。漂亮且可读。您是否尝试过在phpmyadmin中运行查询?你会得到什么错误?不,查询很好-我想错误在问题的最后一部分,当“print_r($graphData)”时你会得到什么
$data = array();
while($graphData = mysql_fetch_array($graph)){
$data[$graphData['MONTH']] = $graphData['COUNT'];
}
$graph = mysql_query("SELECT MONTHNAME(dateadded) MONTH, COUNT(*) COUNT
FROM products
WHERE ((YEAR(dateadded)=2012) && (site_url = '$_GET[site_url_graph]'))
GROUP BY MONTH(dateadded)",$db);
$data = array();
while(list($month, $count) = mysql_fetch_array($graph)) {
$data[$month] = $count;
}