1

我有一个数组数组。每个数组都包含一个用户的信息(姓名、电子邮件、用户名等)。当用户登录时,页面需要在表格中显示数组。(这工作正常)

<table>

    <?php
        if(isset($_SESSION['logged_in_user'])) {
            echo '<tr>';
            for ($i = 0; $i < count($item_names); $i++) {
                if ($i == 8) continue;
                echo "<th scope=\"col\">$item_names[$i]</th>";
            }
            echo '</tr>';
            $altrow = false;
            foreach ($contacts as $contact) {
                echo ($altrow) ? '<tr class="alt">' : '<tr>';
                $altrow = !$altrow;
                for ($i = 0; $i < count($contact); $i++) {
                    if ($i == 8) continue;
                    echo "<td>$contact[$i]</td>";
                }
                echo '</tr>'; 
            }
        }
    ?> 
</table>

但我还希望表格突出显示特定登录用户的数组(行)。

我尝试过(但失败了):

<table>
    <?php
        if(isset($_SESSION['logged_in_user'])) {
            echo '<tr>';
            for ($i = 0; $i < count($item_names); $i++) {
                if ($i == 8) continue;
                echo "<th scope=\"col\">$item_names[$i]</th>";
            }
            echo '</tr>'
            $altrow = false;
            foreach ($contacts as $contact) {
                if ($contact[1] == $_SESSION['logged_in_user']) {
                    echo '<tr class="highlight">' : '<tr>'; 
                } else {
                    echo ($altrow) ? '<tr class="alt">' : '<tr>';
                    $altrow = !$altrow;
                    for ($i = 0; $i < count($contact); $i++) {
                        if ($i == 8) continue;
                            echo "<td>$contact[$i]</td>";
                        }
                    }
                    echo '</tr>'; 
                }
            }
    ?> 
</table>

我什至不接近吗?任何帮助表示赞赏!

4

2 回答 2

0

请尝试下面给出的代码

<table>
   <?php
    if(isset($_SESSION['logged_in_user'])) {
        echo '<tr>';
        for ($i = 0; $i < count($item_names); $i++) {
            if ($i == 8) continue;
                echo "<th scope=\"col\">$item_names[$i]</th>";
         }
        echo '</tr>';

      $altrow = false;

      foreach ($contacts as $contact) {
        if ($contact[1] == $_SESSION['logged_in_user']) {
            echo '<tr class="highlight">'; 
        } else {
            echo ($altrow) ? '<tr class="alt">' : '<tr>';
         }   
           $altrow = !$altrow;
            for ($i = 0; $i < count($contact); $i++) {
                if ($i == 8) continue;
                     echo "<td>$contact[$i]</td>";
             }

            echo '</tr>'; 
         }
      }
   ?> 
</table>

您的代码中有一些括号错误,例如} else {}.

我希望它对你有用。

谢谢

于 2012-11-01T05:11:08.180 回答
0

嗨 yaar 只需检查游览循环 foreach ($contacts as $contact=>$value) { //在此处操作 $value ,或者您可以通过在此处打印 $value 来检查

}

于 2012-11-01T05:02:21.153 回答