如何在td标签内初始化if else语句

时间:2019-02-13 08:51:01

标签: php

在我的数据库中,我有一个表列,其中包含图像的文件路径。文件路径的名称为photo我的某些行没有文件路径。在显示表的while循环中,我想添加一个条件,即如果没有文件路径,它将提示文本“用户尚未上传照片”。当它具有文件路径时,我可以显示该文件路径并将其与目标空白链接。

这是我的php文件。

 <?php require_once 'process.php';
 session_start();
     $role = $_SESSION['sess_userrole'];
     $name = $_SESSION['sess_name'];
     if(!isset($_SESSION['sess_username']) && $role!="admin"){
       header('Location: index.php?err=2');
     }
 ?>


 <html>
<head>
    <title>User Accounts</title>
    <link rel="icon" href="isalonlogo.png">
        <link rel="stylesheet" href="css2/bootstrap.min.css">
        <script src="css/jquery-3.3.1.slim.min.js"></script>
        <script src="css/popper.js/1.14.3/umd/popper.min.js"></script>
        <script src="css/bootstrap.min.js"></script>
</head>
<body>
    <?php 
    if (isset($_SESSION['message'])):?>
    <div class="alert alert-<?=$_SESSION['msg_type']?>">
        <?php 
            echo $_SESSION['message'];
            unset ($_SESSION['message']);?>
    </div>
    <?php endif ?>

        <div class="navbar navbar-default navbar-fixed-top" role="navigation">
    <div class="container">
        <div class="navbar-header">

        <span class="navbar-brand" href=""><?php echo " " . "$name"?>, here are the Stylist user lists.</span>
        </div>

        <div class="navbar-collapse collapse">
        <ul class="nav navbar-nav navbar-right">
            <li><a href="#" class="btn btn-secondary btn-lg disabled">User Lists</a></li>
            <li><a href="adminhome.php"><?php echo $_SESSION['sess_username'];?></a></li>
            <li><a href="logout.php">Logout</a></li>
        </ul>
        </div>
    </div>
    </div>
    <br> <br> <br>
    <div class="container">
    <?php
    $mysqli = new mysqli("localhost","id7508046_root","123123123as","id7508046_isalon") or die(mysqli_error($mysqli));
    $result = $mysqli->query("SELECT * FROM  stylist ") or die($mysqli->error);
    ?>
    <div class="row justify-content-center" width="80%">
        <table class="table">
            <thead>
                <tr>
                    <th>UserName</th>
                    <th>Name</th>
                    <th>Image</th>
                    <th colspan="2">Action</th>
                </tr>
            </thead>
            <?php   
                while($row = $result->fetch_assoc()): ?>
                <tr>
                    <td><?php echo $row['username'] ?></td>
                    <td><?php echo $row['name'] ?></td>

 // THIS PART HERE IS THE PROBLEM
                    <td><?php if(strcmp($row['photo'],"") == 0): {echo 'Ola';
                    }else:
                              {echo '<img src="'.$row['photo'].'">';
                              }
                          endif;
                        ?></td>
                    <td>
                        <a href="userlist.php?edit=<?php echo $row['stylist_id']; ?>"
                            class="btn btn-info">Edit</a>
                        <a href="process.php?delete=<?php echo $row['stylist_id']; ?>"
                            class="btn btn-danger">Delete</a>    
                    </td>
                </tr>
                <?php endwhile; ?>
          </table>  
    </div>
    <?php 
            function pre_r($array){
                echo '<pre>';
                print_r($array);
                echo '</pre>';
            }
            ?>

    <br>
    <br>

    <div class="container justify-content-center">
        <h5 class=" justify-content-center">Admin <?php echo $name;?>, create or edit an account here.</h5>
        <form action="process.php" method="POST">
            <input type="hidden" name="id" value="<?php echo $id; ?>">
            <div class="form-group">
            <label>UserName</label>
            <input type="text" name="username" class="form-control" value="<?php echo $username;?>" placeholder="Enter new user Username" required>
            </div>
            <div class="form-group">
            <label>Password</label>
            <input type="text" name="password" class="form-control" value="<?php echo $password;?>" placeholder="Enter new user Password" required>
            </div>
            <div class="form-group">
                <?php 
                    if($update == TRUE): ?>
                    <button type="submit" class="btn btn-primary" name="update">Update</button>
                    <input type="button"  class="btn btn-primary" name="reset" value="Reset" onclick="window.location.href='stylistUserlist.php'">
                    <?php 
                    else: ?>
            <button type="submit" class="btn btn-primary" name="save">Save</button>
            <input type="button"  class="btn btn-primary" name="reset" value="Reset" onclick="window.location.href='stylistUserlist.php'">
                <?php 
                    endif; ?>
            </div>
        </form>
    </div>
    </div>
</body>

2 个答案:

答案 0 :(得分:1)

尝试

<td>
<?php if(!empty(trim($row['photo']))): ?>
    <img src="<?php echo $row['photo'];?>"/>
<?php else: ?>
    User did not upload a photo yet
<?php endif; ?>
</td>

答案 1 :(得分:0)

将以下代码用于TD,因为您当前在if和else中都添加了相同的代码,而不是如果可以,则可以使用三元运算符。

<td>
<?php $photo = (isset($row['photo'])) ? $row['photo'] : ""; 
echo ($photo) ? "'. <img src=".$photo."> .'" : ""; ?>
</td>