2011-09-21 40 views
0
$searchquery = mysql_query("SELECT * FROM regform_admin WHERE status = 'Approved' AND month LIKE '%".$checkmonth."%' AND day LIKE '%".$checkday."%' AND year LIKE '%".$checkyear."%' OR month2 LIKE '%".$checkmonth."%' AND day2 LIKE '%".$checkday."%' AND year2 LIKE '%".$checkyear."%' OR betday LIKE '%".$checkday."%'"); 
      while($fetchres = mysql_fetch_array($searchquery)) { 
      $vehicles = $fetchres['vehicles']; 
      echo "<b>$vehicles</b><br>"; 
        } 

include "vehicledbconnect.php"; 
$searchquery2 = mysql_query("SELECT * FROM vehicletbl WHERE vehicle NOT LIKE '%".$vehicles."%'"); 

    while($fetch = mysql_fetch_array($searchquery2)) { 
    $v = $fetch['vehicle']; 
    $vehed = $fetch['vehed']; $vehcap = $fetch['vehcap']; $vehyr = $fetch['vehyr']; 
    $type = $fetch['type']; 
     echo "<tr>"; 
     echo "<td class=light><input type = 'checkbox' name='chk[]'></td>"; 
     echo "<td class=light>$v</td>"; 
     echo "<td class=light>$type</td>"; 
     echo "<td class=light>$vehyr</td>"; 
     echo "<td class=light>$vehed</td>"; 
     echo "<td class=light>$vehcap</td>"; 
     echo "<td class=light>$vehcolor</td>"; 
     echo "</tr>"; 
     echo "$array"; 
      } 

是否可以在$ searchquery2内的$ searchquery中声明while语句中的所有值?在语句外调用多个值

例如为$ SEARCHQUERY值是:

现在我要回应这一切在$ searchquery2,这可能吗?我试图在$ searchquery2内部$ echo(来自$ searchquery),但它只回应最后一个值(例如vehicle3),因为我知道它不在$ searchquery的while语句中。

可能吗?谢谢。

回答

0

代替echo荷兰国际集团while循环中,尝试输出缓冲,以一个变量,而不是:

$ob = ''; 
while($fetchres = mysql_fetch_array($searchquery)) 
    $ob .= '<b>' . $fetchres['vehicles'] . '</b><br>'; 
echo($ob); 

在你的第二个while循环,$ob还活着,你可以很容易地呼应了出来。在这里,我将它作为一个字符串存储,但如果您需要更细粒度地访问这些元素,则也可以将这些值存储为一个数组。

更新

如果你想将它们存储到一个数组,试试这样:

$ob = array(); 
while($fetchres = mysql_fetch_array($searchquery)) 
    $ob[] = $fetchres['vehicle']; // This pushes the current vehicle onto the end of the array 

这个循环之后,你就必须对阵列中的每个车辆的字符串,没有格式。您可以在输出元素时添加该元素。用foreach迭代你的数组:

foreach($ob as $k => $v) { 
    // Inside this loop, $k is the key, or index, and $v is the value. 
    // You can change the names of these variables by modifying the line above, e.g. 
    // foreach($ob as $foo => $bar) <-- $foo = key/index, $bar = value 
} 
+0

有了这一个我可以同时($ fetchres = mysql_fetch_array($ SEARCHQUERY)),而内部回声出所有的$ OB($取= mysql_fetch_array($ searchquery2))? – glove

+0

当然,为什么不呢?只要你的脚本生活或者直到你明确地'unset()',$ ob'才会生效。 –

+0

如果我把$ fetchres ['vehicles']的所有值放入一个数组中,它会像'$ ob。=''。array($ fetchres ['vehicles'])''
';“ ?? 有可能吗? – glove

1

在循环中构建一个循环。

试试这个:

mysql_query("SELECT * FROM regform_admin WHERE...") 
while(...) 
{ 
    $vehicles = $fetchres['vehicles']; 
    echo "<b>$vehicles</b><br>"; 

    mysql_query("SELECT * FROM vehicletbl WHERE vehicle NOT LIKE '%".$vehicles."%'"); 
    while(...) 
    { 
     echo ... 
    } 

} 
+0

我已经做了这一个,但它并没有给我我想要的确切输出。 – glove

+0

问题是什么?结果应该如何? – Scoutman

+0

如果我在$ searchquery的while循环中放置$ searchquery2,它会将$ searchquery2的值相乘,具体取决于$ searchquery在$ searchquery的while循环内的结果数量。 – glove