将mysql查询值添加到php数组

将mysql查询值添加到php数组,php,mysql,Php,Mysql,我正在尝试将所有查询值添加到数组中 这是我的密码: $value = $_POST['hospitalname']; $from = $_POST['from']; $to = $_POST['to']; if($_POST["Submit"]=="Submit") { for ($i=0; $i<sizeof($value); $i++) { $sql = "SELECT sl_id from mfb_servicelog where h_id LIKE ('".

我正在尝试将所有查询值添加到数组中

这是我的密码:

$value = $_POST['hospitalname'];
$from = $_POST['from'];
$to = $_POST['to'];
if($_POST["Submit"]=="Submit") {
    for ($i=0; $i<sizeof($value); $i++) {
        $sql = "SELECT sl_id from mfb_servicelog where h_id LIKE ('".$value[$i]."')";
        $result = mysql_query($sql);
        while ($row = mysql_fetch_assoc($result)) {
            $slid = $row["sl_id"];
            for ($x=0; $x<sizeof($slid);$x++) {
                echo $slid[$x];
            }
        }
    }
}
这些都是sl_id和查询$sql的结果。这很好

现在我想把所有这些值放入一个数组中,这样我就可以从查询中调用它,就像我在上面的$sql查询中调用$value一样

但是我的echo$x给了我这个输出,它是每个值的第一位数字

13333551111122222222222

请告诉我正确的方法。

只需将它们存储在数组中,而不是普通变量中。试试-

$slid[] = $row["sl_id"];
更新

并在循环开始之前定义$slided-$slided=array

或者您可以使用array_unique

你的代码应该是-

   $slid = array();
   while ($row = mysql_fetch_assoc($result)) {
        if (!in_array($row["sl_id"], $slid)) {
             $slid[] = $row["sl_id"];
        }
   }

   foreach($slid as $id) {
      echo $id."<br>";
   }

请注意,mysql_u函数已被弃用!使用PDO或mysqli_u2;而不是字符串,它是一个数组。所以$slide[$x]是$slided的第x个字符。您只获得第一个字符,因为$slided的大小是1。那么,正确的方法是什么呢@BarmarLike在Bose中士发布的答案中。@Barmar…我能够获得该表中的所有值。。。但我无法理解如何区分每个值。。。比如,如果我使用WHERE sl_id像“$slided[$I]”运行查询。。。。它应该为$slided.it中的每个值运行该查询,并重复所有值。13338385338538613338538638713338538638713338538863873881333853873885211333853863873885215251333853873885215251126133853863873885215251126713338538638738852152511261127是,因为您为每个while循环输出slided的值;在while之后放置for循环:提示:您可以使用foreach,这更容易:PWell经过这么多编辑后…我真的很困惑。。。让我和你一起验证我的代码。谢谢你的更新。现在,echo返回一行中的所有值。但我如何从中获得单个值……就像我通过$value[I]获得一样,我实际上需要将它添加到另一个查询中,该查询将针对sl_id的每个值运行
if (!in_array($row["sl_id"], $slid)) {
    $slid[] = $row["sl_id"];
}
   $slid = array();
   while ($row = mysql_fetch_assoc($result)) {
        if (!in_array($row["sl_id"], $slid)) {
             $slid[] = $row["sl_id"];
        }
   }

   foreach($slid as $id) {
      echo $id."<br>";
   }