我试着调试MySQL查询,我也很难理解为什么一个while循环在我的脚本不能正常工作:问题与MySQL查询
// select db
mysql_select_db($dbname);
for ($x = $latRange[0]; $x <= $latRange[1]; $x++)
{
for ($y = $lngRange[0]; $y <= $lngRange[1]; $y++)
{
$sql="SELECT * FROM $usertable WHERE $xlookup = $x AND $ylookup = $y";
$SQLresult = mysql_query($sql);
while($row = mysql_fetch_array($SQLresult))
{
$tmpResult = $row[$popDen];
$result += $tmpResult;
}
}
}
描述的变量的样品值:
$latRange = array(3,7);
$lngRange = array(9,25);
$popDen = 'ColumnNameIWant'
$xlookup = 'Col1'
$xlookup = 'Col2'
我查询背后的逻辑是,它发现的x
和y
所有组合,获取相应的$popDen
值,并将其添加到$result
。结果在我的脚本开始处定义,并在此循环后由程序返回。
我知道这个问题部分是我的,而循环,但我不太明白如何修复它,因为我不完全了解mysql_fetch_array
功能。我也试过mysql_fetch_row
,我的查询也不能用于这个。
我从注释掉的代码块不同,并传回其他数字,其他一切工作的认识;这只是失败的大块。
有没有,我做任何明显的错误?
你能说清楚你在用$ popDen变量做什么吗?另外我会用最后一个循环的每个语法,因为这似乎模仿你期望更好。 – Bnjmn 2011-01-20 01:21:23
$ popDen包含一个字符串,它是一个列名。我只希望能够返回一个值;我是新来的语法,不知道什么是最好的使用。 – djq 2011-01-20 01:28:59