Нет результата на столе - PullRequest
0 голосов
/ 22 июня 2019

Мне нравится извлекать результат mysql и присваивать переменной ($ status), и в зависимости от результата я хочу поставить ok или ko (в этом случае, если $ status «Активен», результат «ОК»)

Кажется, что проблема в том, когда показываешь результат в тд, но больше ничего не видишь. Кто-нибудь может помочь?

    if(mysqli_num_rows($result) > 0)
    {
        $number = 1;
    while($row = mysqli_fetch_assoc($result))
    {
        $status = strtolower($row['register_status']);

        $data .= '<tr>
                        <td>'.$row['id'].'</td>
                        <td>'.$row['first_name'].'</td>
                        <td>'.$row['last_name'].'</td>
                        <td>'.$row['email'].'</td>
                        <td>'
                        if ($status == "Active") {
                                echo "OK";
                        }
                        else {
                                echo "KO";
                        }
                        '</td>

                        <td width="1%">
                                <div class="dropdown">
                                 <button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown">Actions
                                 <span class="caret"></span></button>
                                 <ul class="dropdown-menu">
                                    <li onclick="GetUserDetails('.$row['id'].')"><a href="#">Update</a></li>
                                    <li onclick="DeleteUser('.$row['id'].')"><a href="#">Delete</a></li>
                                 </ul>
                                 </div>
                         </td>
                  </tr>';```


The idea is change in the future the echo for an image or a div content

Ответы [ 2 ]

1 голос
/ 22 июня 2019

Вместо использования echo, который будет выводить «OK» или «KO» перед остальным HTML, попробуйте определить, нужно ли вам «OK» / «KO» перед созданием HTML.

Вы также можете добавить изображение или div или что угодно, вместо «OK» или «KO».

Затем просто объедините это $value со своей строкой, как вы делаете с остальной частью вашего td s

if(mysqli_num_rows($result) > 0)
    {
        $number = 1;
    while($row = mysqli_fetch_assoc($result))
    {
        $status = strtolower($row['register_status']);
        if ($status == "active") {
            $value = "<div>Other Content</div>";
        }
        else {
            $value = "<img src='http://example.com/img.jpg'>";
        }
        $data .= '<tr>
                        <td>'.$row['id'].'</td>
                        <td>'.$row['first_name'].'</td>
                        <td>'.$row['last_name'].'</td>
                        <td>'.$row['email'].'</td>
                        <td>'.$value.'</td>

                        <td width="1%">
                                <div class="dropdown">
                                 <button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown">Actions
                                 <span class="caret"></span></button>
                                 <ul class="dropdown-menu">
                                    <li onclick="GetUserDetails('.$row['id'].')"><a href="#">Update</a></li>
                                    <li onclick="DeleteUser('.$row['id'].')"><a href="#">Delete</a></li>
                                 </ul>
                                 </div>
                         </td>
                  </tr>';
0 голосов
/ 22 июня 2019

Во-первых, вы конвертируете статус в нижний регистр и пытаетесь сравнить с «Активным». Это всегда дает вам неправильный ответ каждый раз.

Вместо того, чтобы использовать эхо, вы можете сначала взять значение статуса в одну переменную, а затем попытаться установить его под таблицей. Это будет работать для вас.

if ($status == "active") {
    $status = "OK";
}
else {
    $status = "KO";
}
$data .= '<tr>
<td>'.$row['id'].'</td>
<td>'.$row['first_name'].'</td>
<td>'.$row['last_name'].'</td>
<td>'.$row['email'].'</td>
<td>'.$status.'</td>

<td width="1%">
        <div class="dropdown">
         <button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown">Actions
         <span class="caret"></span></button>
         <ul class="dropdown-menu">
            <li onclick="GetUserDetails('.$row['id'].')"><a href="#">Update</a></li>
            <li onclick="DeleteUser('.$row['id'].')"><a href="#">Delete</a></li>
         </ul>
         </div>
 </td>
</tr>';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...