将“$ message”放在codeigniter中的表中

时间:2016-02-01 12:50:06

标签: php html codeigniter

我有一个问题,我想将$message放在表中,与“未找到搜索”等效。

以下是我在$message = Search not found

之外的照片

查看:

 <div class="z table-responsive" >
            <table class=" table table-hover"  >


                 <thead >
                             <tr >

                                   <th>ID Number</th>
                                   <th>First name</th>
                                   <th>Middle name</th>
                                   <th>Last name</th>
                                   <th>Sex</th>

                           </tr>
                      </thead>

   <?php if ( isset($message) ){
         echo  $message;

   } else{  foreach($results as $row){
        ?>

    <tbody>
          <tr>


                  <td><?php echo $row-> Idnumber ?></td>
                  <td class="text-capitalize "><?php echo $row -> Firstname ?></td>
                   <td class="text-capitalize"><?php echo $row->Middlename ?></td>
                   <td class="text-capitalize"><?php echo $row-> Lastname ?></td>
                   <td class="text-capitalize"><?php echo $row-> Sex?></td>
                            <td>
                                <a href="<?php echo site_url('viewstudentinalpha/viewspecific/'.$row->Id) ?>" class="btn btn-info " style="font-size: 18px;" type="submit" name="submit" role="button">Option</a>

                             </td>
         </tr>
      </tbody>




    <?php }} ?>




            </tbody>

            </table>
         </div> 

3 个答案:

答案 0 :(得分:1)

您使用的是错误的结束标记。

  

这将使用Search not foundcolspan 5

在表格中打印center aligned      

注意:我们大部分时间检查foreach值为空($results)的位置。但在您的情况下,您正在检查其他内容($message)。

更改

<tr>  <!-- Changed -->
    <td colspan="5" align="center"><?php echo  $message; ?> </td>
</tr>

if ( isset($message) ){已更改为if (!empty($message)){

最终代码

<div class="z table-responsive" >
    <table class=" table table-hover"  >
        <thead >
            <tr >
                <th>ID Number</th>
                <th>First name</th>
                <th>Middle name</th>
                <th>Last name</th>
                <th>Sex</th>
            </tr>
        </thead>
        <tbody>
            <?php 
            if (!empty($message)) # improved
            {
                ?>
                <tr> # Changed
                    <td colspan="5" align="center"><?php echo  $message; ?> </td>
                </tr>
                <?php           
            } 
            else
            {  
                foreach($results as $row)
                {
                    ?>              
                        <tr>
                            <td><?php echo $row-> Idnumber ?></td>
                            <td class="text-capitalize "><?php echo $row -> Firstname ?></td>
                            <td class="text-capitalize"><?php echo $row->Middlename ?></td>
                            <td class="text-capitalize"><?php echo $row-> Lastname ?></td>
                            <td class="text-capitalize"><?php echo $row-> Sex?></td>
                            <td>
                                <a href="<?php echo site_url('viewstudentinalpha/viewspecific/'.$row->Id) ?>" class="btn btn-info " style="font-size: 18px;" type="submit" name="submit" role="button">
                                    Option
                                </a>
                            </td>
                        </tr>
                    <?php 
                }
            } 
            ?>
        </tbody>

    </table>
</div> 

修改01

在控制器中

function search_keyword() 
{ 
    $session_data = $this->session->userdata('logged_in'); 
    $data['Username'] = $session_data['Username']; 
    $keyword = $this->input->post('keyword'); 
    $data['results'] = $this->model_adminlogin->search($keyword); 
    $this->load->view('result_view',$data); 
}

在视图中

如果这样改变你。

将我在上面添加的所有代码复制到您的视图中。并且只改变这几行。

<?php 
if (!empty($results)) # Change
{
    ?>
    <tr> # Change
        <td colspan="5" align="center"> Search not found </td> # Change
    </tr>
    <?php           
} 
else
{ 

答案 1 :(得分:1)

CodeIgniter与代码不同,这不是问题。您要对代码执行的操作是将消息放在<thead><tbody>之间,而不是放在任何表标记中。

这与尝试将其放在表中的行之间相同,因此被解释为不属于表的一部分,因此会在表外部绘制。

如果您将邮件放入<tbody>,它会出现在正确的位置,您可以这样做:

<?php if ( isset($message) ){
         echo  "<tbody><tr><td colspan='5'>" . $message . "</td></tr></tbody>";

   }....

答案 2 :(得分:0)

试试这个

<tbody>
 <?php 
 if ( isset($result ) 
// or if (!isset($message)) //depend on your code
     {  
       foreach($results as $row){
 ?>

      <tr> 
              <td><?php echo $row-> Idnumber ?></td>
              <td class="text-capitalize "><?php echo $row -> Firstname ?></td>
               <td class="text-capitalize"><?php echo $row->Middlename ?></td>
               <td class="text-capitalize"><?php echo $row-> Lastname ?></td>
               <td class="text-capitalize"><?php echo $row-> Sex?></td>
               <td>
                   <a href="<?php echo site_url('viewstudentinalpha/viewspecific/'.$row->Id) ?>" class="btn btn-info " style="font-size: 18px;" type="submit" name="submit" role="button">Option</a>
              </td>
     </tr>

  <?php }}
   else 
   //or elseif(isset($message)) //depend on your code
   {
         echo $message; ?>
   }
 </tbody>

  </table>
</div>