php-url数组for循环中的动态mysql_查询
我在堆栈上找过类似的东西,但没有一个和这个完全一样 我(认为我)需要在循环中生成一个唯一的MySQL查询,因为每次迭代都需要查找不同的表。循环来自分解的$\u GET数组 问题在于基于循环迭代创建一个不同名称的mysql查询。我在$var名称不同的地方做过,但它不起作用,我想是因为它是一个字符串而不是一个变量 谢谢你的帮助php-url数组for循环中的动态mysql_查询,php,mysql,for-loop,Php,Mysql,For Loop,我在堆栈上找过类似的东西,但没有一个和这个完全一样 我(认为我)需要在循环中生成一个唯一的MySQL查询,因为每次迭代都需要查找不同的表。循环来自分解的$\u GET数组 问题在于基于循环迭代创建一个不同名称的mysql查询。我在$var名称不同的地方做过,但它不起作用,我想是因为它是一个字符串而不是一个变量 谢谢你的帮助 $temps = explode(",", $_GET['temps']); $tempCount = count($temps); for ($i=0; $i<$
$temps = explode(",", $_GET['temps']);
$tempCount = count($temps);
for ($i=0; $i<$tempCount; $i++)
{
/*'normal' database lookup
$check = mysql_query("SELECT * FROM _db_".$temps[$i]."");
$checks = array();
while ($row = mysql_fetch_assoc($check)) {
$checks[] = $row;
}*/
//here's where I'm trying to build a 'dynamic' lookup for each loop iteration
$checkTemp=$check.$temps[$i];
$checkTempArray=$check.$temps[$i].'Array';
$checkTemp = mysql_query("SELECT * FROM _db_".$temps[$i]."");
$checkTempArray = array();
while ($row = mysql_fetch_assoc($checkTemp)) {
$checkTempArray[] = $row;
}
}
$temps=explode(“,”,$\u GET['temps']);
$tempCount=计数($temps);
对于($i=0;$i如果我理解正确,您将尝试从中以分隔的所有表中选择*
,
。\u GET[“temps”]
$temps=explode(“,”,$\u GET['temps']);
$tempCount=计数($temps);
$allResults=array();
因为($i=0;$i似乎是您代码中的一个输入错误
$checkTemp = mysql_query("SELECT * FROM db".$temp[$i]."");
任用
$temps[$i] or just $temp
$temp[$i] doesn't makes any sense
因此,您的查询应该是
$checkTemp = mysql_query("SELECT * FROM db".$temps[$i]."");
编辑:
对于阵列部件,您可以使用
$$temp = array();
while ($row = mysql_fetch_assoc($checkTemp)) {
$$temp[] = $row;
}
您好。我已经修改了代码以显示附加了temp变量的_db。因此url“&temps=john,sally”将查找_db_john和_db_sally@gavin我更改了我的答案,它现在将结果存储在数组中。谢谢,我将给出一个try$check没有被使用。你说的“不同名称”的MySQL查询是什么意思?我已经修改了它,以便你可以看到每次迭代的db表名都不同。因此需要存储的数组必须具有不同的名称,以便以后查找(foreach等)。例如,数组$checkJohn和$checkSally$checkTemp=mysql_查询(“从db中选择*”。$temp[$i]);使用$temps[$i]或仅使用$temp,$temp[$i]没有任何意义,我已经修改了。但是我也需要创建一个动态创建的数组,用于以后的查找。这是我的主要问题。谢谢,boom_Shiva。我现在已经修改了。我也需要创建一个动态创建的数组,用于以后的查找。这似乎不起作用。我简化了它,只是使用$temps[I]。
$$temp = array();
while ($row = mysql_fetch_assoc($checkTemp)) {
$$temp[] = $row;
}