[英]How to get an array of values from a mysql column based on an array
我是PHP的新手,在進入數組時,它使我陷入循環。 無雙關語。 到目前為止,以下所有內容都為我提供了所需的信息。 $ datum包含我需要的一組提交ID。 接下來,我想查詢一個表,以將$ datum中的所有提交ID匹配到Image ID列,然后將結果放入包含所有image ID的數組中。 然后,我需要查詢圖像表以獲取每個圖像ID的文件名,並將其放入SELECT框中。 我只是不確定如何使用數組循環。 我只是做不到而只做我所需要的。 我已經將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[]...
$ answers =以上結果中的新數組
然后
mysql_query("SELECT filename FROM images WHERE image_id = $answers[]
然后
放入選擇框。
其中一些我可以嘗試解決,但現在看來似乎無法從基於另一個數組的表的一個列中獲取值數組。 其余的任何幫助都只是肉汁。 提前致謝。
好像您需要在基准查詢中加入image_id和filename一樣。 我還建議您不要使用mysql_*
而應使用PDO
或其他一些包裝器。 您至少應該清理輸入,尤其是通過_GET
獲取的輸入。
如果您創建一個將表之間的所有數據連接起來的查詢,而不是在PHP端進行操作,則可能會更簡單。 很難理解您的數據庫和表之間的關系,但是絕對可以在SQL端做到這一點,並且不必每次都查詢要連接的每個表的數據庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.