2012-01-08 18 views
0

私はPHPを初めて使い、配列を取得してループを起こしています。いいえ、意図されていない。以下のすべてが私が今まで必要なものを私に与えている。 $ datumには、必要な投稿IDの配列が含まれています。私が次にしたいのは、テーブルを照会して、$ ID内のすべてのsubmission IDをImage ID列に一致させ、その結果をすべてのイメージIDを含む配列に入れることです。次に、イメージIDをそれぞれ取得してSELECTボックスに入れるために、イメージテーブルを照会する必要があります。私は配列でどのようにループを動作させるかわかりません。私はちょうど私が必要とすることを何度も行うことができません。アイデアは、コードの下にプレーンな英語で行うのが好きなものを入れます。助けてくれてありがとう。配列に基づいてmysqlカラムから値の配列を取得する方法

THENやりたいWHAT ID
<?php 
$mask5 = $_GET["var1"]; 
require("codebase/grid_connector.php"); 
$res = mysql_connect("", "", ""); 
mysql_select_db("supplydb"); 
//Get Category ID 
$cat = mysql_query("SELECT category FROM submissions WHERE submissions.submission_id='$mask5'"); 
$rows = mysql_fetch_array($cat, MYSQL_ASSOC); 
$array = $rows['category']; 
//Get Manufactuer ID 
$man = mysql_query("SELECT manufacturer_id FROM submissions WHERE submissions.submission_id='$mask5'"); 
$arows = mysql_fetch_array($man, MYSQL_ASSOC); 
$array1 = $arows['manufacturer_id']; 
//Get All Submission ID's for this popup 
$datum = array(); 
$result = mysql_query("SELECT submission_id FROM submissions WHERE submissions.category='$array' AND submissions.manufacturer_id='$array1'"); 
while ($rowd = mysql_fetch_array($result, MYSQL_ASSOC)) { 
    $datum[] = $rowd; 
} 

////// .......

mysql_query("SELECT image_id FROM imagsub WHERE image_id = $datum[]... 

$答え=上記の結果から新しい配列

mysql_query("SELECT filename FROM images WHERE image_id = $answers[] 

THEN

選択ボックスに入れる。

私は苦労して理解しようとしていますが、今は別の配列に基づくテーブルのある列から値の配列を取得できないようです。残りのすべての助けは肉汁だ。前もって感謝します。

+0

選択ボックスが悪い場合は、メニューをドロップダウンすることを意味します。もう一度ありがとうございます。 –

答えて

0

PHP側で行うのではなく、テーブル間のすべてのデータを結合するクエリを作成する方が簡単かもしれません。あなたのデータベースとテーブルの関係を理解することは難しいですが、SQL側では確実に行います。結合する各テーブルについて毎回データベースにクエリを実行しないでください。

+0

アドバイスをいただきありがとうございます。与えられたテーブルの列のすべての一致する結果を照会するために配列を使用する単純な照会の例を提供できますか?それは本当に私がハングアップしている場所で、どこでもサンプルを見つけることはできませんでした。ジェネリックなものが大いに役立つでしょう。ありがとう! –

+0

'$ query =" SELECT * WHERE ID IN IN(0 "; foreach($ array as $ value){ $ query = $ query。"、$ value; } $ query = $ query。 ") "; ' – xmc

+0

助けてくれてありがとうございました。正しい道を私に送ってくれましたが、完全なnewbを消化するのはちょっと難しかったので、mysql検索のための配列を使用するコードを見つけました。 。 –

0

datumクエリのimage_idとfilenameに参加する必要があるようです。 mysql_*を使用せず、代わりにPDO、またはその他のラッパーを使用することをお勧めします。あなたの入力を少なくとも消毒する必要があります。特に、_GETで取得した場合は入力を慎重にする必要があります。

関連する問題