[英]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.