2014-09-20 48 views
0

我已经做了一个视图mysql和php我想通过过滤器显示操作,但结果无法显示。下面是代码 此功能以显示数据如何在php中显示数据查看mysql

function tampilDataRegFilter($data){ 
     $query=mysql_query("SELECT * from dataPendaftaran WHERE nm_mhs LIKE '%$data%'"); 
     $no_rows=mysql_num_rows($query); 
     if($no_rows==1){ 
      while($row=mysql_fetch_array($query)){ 
       $data[]=$row; 
       return $data; 
      } 
     } 
    } 

这里显示的数据

<?php 
     //tampil berdasar filter 
     if($_POST['do']=="find"){ 
      $arrayBayarReg=$data->tampilDataRegFilter($_POST['q']); 
     } 
     if(count($arrayBayarReg)){ 
      foreach($arrayBayarReg as $data){ 
       ?> 
       <tr class="tabcont"> 
        <td class="tabtxt" align="center"><?php echo $c=$c+1; ?>.</td> 
        <td class="tabtxt" align="center"><?php echo $data['kode_bayar'];?></td> 
        <td class="tabtxt" align="center"><?php echo $data['nm_mhs'];?></td> 
        <td class="tabtxt" align="center"><?php echo $data['tgl_bayar']; ?></td> 
        <td class="tabtxt" align="center"><?php echo $data['jumlah']; ?></td> 
        <td class="tabtxt" align="center"><?php echo $data['keterangan']; ?></td> 
       </tr> 
       <?php 
      } 
     }else{ 
      echo 'Not Found !'; 
     } 
    ?> 

如何解决这个问题,我是在PHP初学者。非常感谢帮助:)

回答

0
function tampilDataRegFilter($data){ 
    $query=mysql_query("SELECT * from dataPendaftaran WHERE nm_mhs LIKE '%$data%'"); 
    $no_rows=mysql_num_rows($query); 
    if($no_rows >= 1){ // Does this if there was more than or 1 row. Not only if there was one row 
     $data = array(); 
     while($row=mysql_fetch_array($query)){ 
      $data[]=$row; // Does not return data here 
     } 
     return $data; // Return should only be done when all the data is in the array, which is after while loop is finished 
    } else { 
     return false; 
    } 
} 

我也将围绕此切换:

<?php 
    //tampil berdasar filter 
    if($_POST['do']=="find"){ 
     $arrayBayarReg=$data->tampilDataRegFilter($_POST['q']); 
    } 
    if($arrayBayarReg !== false){ // Returns false if no rows were found 
     foreach($arrayBayarReg as $data1){ // Wouldnt overwrite the $data variable which apparently holds your data object. 
      ?> 
      <tr class="tabcont"> 
       <td class="tabtxt" align="center"><?php echo $c=$c+1; ?>.</td> 
       <td class="tabtxt" align="center"><?php echo $data1['kode_bayar'];?></td> 
       <td class="tabtxt" align="center"><?php echo $data1['nm_mhs'];?></td> 
       <td class="tabtxt" align="center"><?php echo $data1['tgl_bayar']; ?></td> 
       <td class="tabtxt" align="center"><?php echo $data1['jumlah']; ?></td> 
       <td class="tabtxt" align="center"><?php echo $data1['keterangan']; ?></td> 
      </tr> 
      <?php 
     } 
    }else{ // Returned false, so no rows were found 
     echo 'Not Found !'; 
    } 
?> 

试试这一个。

+0

好的......非常感谢,我试过了,我的问题解决了:)。 – muksidin 2014-09-21 00:41:24