drsfgwuw61488 2018-06-01 11:41
浏览 75
已采纳

循环遍历多个数组并动态列出结果

I'm struggeling with this one. How can list all devices, their model and supplier from my database? The data is stored comma-separated in the fields device, model and supplier.

<?php
  while ($row = mysqli_fetch_array($result)) {
    $device_explode = explode(',', $row['device']);
    $model_explode = explode(',', $row['model']);
    $supplier_explode = explode(',', $row['supplier']);

    $device = array(array($device_explode[0]), //count function? How would I do that?
                    array($model_explode[0]),
                    array($supplier_explode[0])
                  );

    echo "<table border='1'>
        <tr>
            <th>Møterom</th>
            <th>Romnummer</th>
        <th>Lokasjon</th>
        <th>Antall sitteplasser</th>
        <th>Tilgjengelig utstyr</th>
        <th>Bilde av rommet</th>
        <th>Endre</th>
        <th>Slett</th>
        </tr>
      <tr>
        <td>".$row['name']."</td>
        <td>".$row['roomnbr']."</td>
        <td>".$row['location']."</td>
        <td>".$row['seats']."</td>
        <td>".$device[0][0]."<br>".$device[1][0]."<br>".$device[2][0]."<br></td> //also count?
        <td><img src='../img/uploads/".$row['img']."' width='150px' ></td>
        <td><a href='?p=editconfroomv2&id=".$row['id']."'>Endre</a></td>
        <td><a href='./index.php?p=deleteconfroomdb&id=".$row['id']."' class='delete'>Slett</a></td>
      </tr>
      </table>";
  }
?>
  • 写回答

2条回答 默认 最新

  • duanheye7423 2018-06-01 12:01
    关注

    It can be done this way (if I understand correct your table structure). I assume, that $device_explode, $model_explode and $supplier_explode have equal number of elements:

    <?php
      // Table Header
      echo "<table border='1'>
            <tr>
            <th>Møterom</th>
            <th>Romnummer</th>
            <th>Lokasjon</th>
            <th>Antall sitteplasser</th>
            <th>Tilgjengelig utstyr</th>
            <th>Bilde av rommet</th>
            <th>Endre</th>
            <th>Slett</th>
            </tr>";
      while ($row = mysqli_fetch_array($result)) {
        $device_explode = explode(',', $row['device']);
        $model_explode = explode(',', $row['model']);
        $supplier_explode = explode(',', $row['supplier']);
    
        // Table rows   
        $td = '';
        $td .= 
            "<tr>
                <td>".$row['name']."</td>
                <td>".$row['roomnbr']."</td>
                <td>".$row['location']."</td>
                <td>".$row['seats']."</td>
                <td>";
    
        for ($i = 0; $i < count($device_explode); $i++) {
            $td .=$device_explode[$i]." ".$model_explode[$i]." ".$supplier_explode[$i]."<br>";
        } 
    
        $td .= 
                "</td>
                <td><img src='../img/uploads/".$row['img']."' width='150px' ></td>
                <td><a href='?p=editconfroomv2&id=".$row['id']."'>Endre</a></td>
                <td><a href='./index.php?p=deleteconfroomdb&id=".$row['id']."' class='delete'>Slett</a></td>
            </tr>";
        echo $td;   
      }
      echo "</table>";
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?
  • ¥15 关于#vue.js#的问题:修改用户信息功能图片无法回显,数据库中只存了一张图片(相关搜索:字符串)
  • ¥15 texstudio的问题,