以下代码回应了以下内容:
表名1
表名2
表名3
表名4“$ entry”:“votes_up for 表名4“
中的$条目
我希望它回应一下:
表名1:“vote_up for $ entry 在表名1“
中表名2:“$ _为$ entry 在表名2“
表名3:“$ _条目的投票 在表名3“
中表名4:“$ _条目的投票 在表名4“
中
如何更改代码以使其回显我想要的内容?
表名的数量因$ entry而异。
谢谢,
约翰
$result = mysql_query("SHOW TABLES FROM feather")
or die(mysql_error());
while(list($table)= mysql_fetch_row($result))
{
$sqlA = "SELECT `site`,votes_up FROM `$table` WHERE `site` LIKE '$entry'";
$resA = mysql_query($sqlA) or die("$sqlA:".mysql_error());
if(mysql_num_rows($resA) > 0)
{
$table_list[] = $table;
while($rowA = mysql_fetch_assoc($resA))
{
$votes_up[$rowA["site"]] = $rowA["votes_up"];
}
}
}
foreach( $table_list as $key => $value){
echo "$value <br />";
}
foreach($votes_up as $site => $vote_up)
{
echo "$site: $vote_up";
}
答案 0 :(得分:1)
没关系。
这给了我想要的东西:
$result = mysql_query("SHOW TABLES FROM feather")
or die(mysql_error());
while(list($table)= mysql_fetch_row($result))
{
$sqlA = "SELECT COUNT(*) FROM `$table` WHERE `site` LIKE '$entry'";
$resA = mysql_query($sqlA) or die("$sqlA:".mysql_error());
list($isThere) = mysql_fetch_row($resA);
if ($isThere)
{
$table_list[] = $table;
}
}
foreach ($table_list as $table) {
$sql = "SELECT votes_up FROM `$table` WHERE `site` LIKE '$entry'";
$sql1 = mysql_query($sql) or die("$sql:".mysql_error());
while ($row = mysql_fetch_assoc($sql1)) {
echo $table . ': "' . $row['votes_up'] . " for $entry from $table\"<br />";
}
}
答案 1 :(得分:0)
看起来您正在从多个表中选择 $ site - 您确定它们具有唯一值吗?您选择的值可能在每个表中实际上是相同的(即使每个表都有NO_DUPLICATES)。