否则,如果不工作在php


else if not working in php

这是我的编码

          <?php
                try
                {
                    $stmt = $conn->prepare("SELECT * FROM registration");
                    $stmt->errorInfo();
                    $stmt->execute();
                    while ($row = $stmt->fetch(PDO::FETCH_ASSOC))
                       {
                        echo "<tr>";
                        echo "<td>". $row['Autoid'] ."</td>";
                        echo "<td>". $row['Name'] ."</td>";
                        if($_SESSION['sesuname'])
                         {
                            echo "<td>Its You ". $_SESSION['sesuname'] ."</td>";
                         } 
                        else if(!$_SESSION['sesuname'])
                         {
                             echo '<td>Follow</td>';
                         }
                        echo "</tr>";
                       }
                } catch (PDOException $e) {
                       'Database Error : ' .$e->getMessage();
                }
            ?>

我试图在最终的td中显示跟随选项和登录用户名。但是,此代码总是在所有行中显示loggedin用户名。我不知道我错在哪里?

我想你的情况应该是,

if($_SESSION['sesuname'] == $row['Name'])
{
   echo "<td>Its You ". $_SESSION['sesuname'] ."</td>";
} 
else
{
   echo '<td>Follow</td>';
}

我认为您要检查每一行,看看名称是否与存储在会话中的名称匹配?

你想要if($_SESSION['sesuname'] == $row['Name']) ?else子句上的任何条件都是假的

对于每一行你只测试你的会话变量;然后打印出来。

isset()核对

   if(isset($_SESSION['sesuname'])&&$_SESSION['sesuname']==$row['Name'])