2014-09-06 63 views
0

我開發我的項目一個搜索工具,陣列比賽中while循環

我期望的輸出是得到從不同表中的共同價值。例如)SKR0BP100

如何得到這個值?

因爲我在for循環中運行程序並從while循環中獲取值,現在如何使用array_intersect()函數?因爲對於數組相交函數,至少需要2個數組,但是我一次只能得到一個數組,因爲它在for-loop上運行。所以我該怎麼做 ??請幫幫我!

$ result = array_intersect($ arr1,$ arr2);

但我只有一個$陣列(即,$ SID [$ i]於在一個時間,因爲它運行在for循環。

我的節目

for($i=0;$i<$cc;$i++) 
{ 

$m1="select * from $u$sc where $b[$i]='$a[$i]' "; 
$m2=mysql_query($m1); 

echo"$m1<br><br>"; 

while($we=mysql_fetch_array($m2)) 
{ 
$sid[$i]=$we['SI']; 

echo"$sid[$i]<br><br>"; 
} 
    } 

所需的輸出 = SKR0BP100

//如何得到??

現輸出

select * from Studentsc where Zone='East' 

SKR0BP100 
SKR0BP12 


select * from Studentsc where Area='Rural' 

SKR0BP129 
SKR0BP13 
SKR0BP100 


select * from Studentsc where Class='12' 

SKR0BP100 
SKR0BP101 
+0

坎? 'select * from studentsc where Zone ='East'and Area ='Rural'and Class ='12'' – senK 2014-09-06 12:04:04

+0

你是對的!但問題是我可以如何在mysql語法中添加單詞「和」,因爲字段不固定(如3),它是用戶選擇,我的意思是用戶將選擇字段(區域,區域等)。通過複選框進行比較。所以它可能是一個,兩個或多個字段 – 2014-09-06 12:08:21

+0

請參閱我的程序中的mysql語法,上面給出..它運行for循環..請幫助我 – 2014-09-06 12:10:59

回答

0

所以,如果你想創建查詢那就試試這個

$where = array(); 
for($i=0;$i<$cc;$i++) 
{ 
    $where[] = $b[$i]."='".$a[$i]."'"; 
} 

$m1="select * from $u$sc where ".implode(" and ",$where); //If you are sure that atleast one value vomes 
+0

先生,如果我使用上述語法(即$ m1 )「select * from $ u $ sc」不顯示,我的意思是隻顯示第二部分(其中宗教='印度教'和學校='政府'和收入='上層階級')只顯示。如果顯示完整的語法,那麼我的程序將是正確的..我會很滿意你! – 2014-09-06 12:42:42

+0

非常感謝!它的工作..我非常感謝你,先生!謝謝! – 2014-09-06 12:55:16