繁体   English   中英

向二维数组中添加数据/从二维数组中获取数据不起作用

[英]Add/get data to/from two Dimensional array Doesn't work

我正在尝试将数据库中的数据添加到二维数组,然后解压缩。

该函数位于名为imsConnection.php的文件夹中

function getCurrency() {
  global $cn;
  $sql = "select * from Currency";
  $res = mysqli_query($cn, $sql);
  $a = array();
  if (mysqli_num_rows($res) > 0) {
    while ($row = mysqli_fetch_array($res)) {
      $a[] = array($row['currencyID'], $row['currencyName']);
    }
  }
  return $a;
}

并将其解压缩到投递箱中:

<select name="drpCurrency" required>
  <?php
    require_once("imsConnection.php");
    $a = getCurrency();
    foreach($a as $i) {
      echo "<option value='$i'>$a[$i]</option>";
    }
  ?>
</select>

给出一个正式的答案:如果您创建了多重二元数组,并且使用foreach循环,则需要根据所需的键来回显该值。 在您的情况下:

    foreach($a as $i)
        echo "<option value='" . $i["currencyID"] ."'>" . $i['currencyName'] . "</option>";

我建议您按照键更改数组-将getCurrency函数更改为:

while($row = mysqli_fetch_array($res)){
    $a[$row['currencyID']] = $row['currencyName'];

然后,您可以将其用作:

$a = getCurrency();
foreach($a as $k => $i)
    echo "<option value='$k'>$i/option>";

假设您希望将值作为货币ID,将​​选项内容作为货币名称

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM