2017-08-09 79 views
0

我從兩個表格中提取問題和答案的數據,並試圖在特定面板框中顯示。我在此代碼中遇到的問題是面板的大小數據顯示的數據量隨着數據庫的每一行而減少。 我正在使用for循環來獲取數據它是正確的嗎?使用PHP在特定設計中顯示數據庫詳細信息

<?php 
define('DB_HOST', 'localhost'); 
define('DB_NAME', 'trialdvhub'); 
define('DB_USER','root'); 
define('DB_PASSWORD',''); 
mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("Failed to connect to MySQL: " . mysql_error()); 
mysql_select_db(DB_NAME) or die("Failed to connect to MySQL: " . mysql_error()); 
$sql="SELECT * FROM question "; 
$aResult=mysql_query($sql); 
$sqli="SELECT * FROM answer"; 
$anresult=mysql_query($sqli); 

?> 
<?php 
      $question = array(); 

      while($rows = mysql_fetch_assoc($aResult)) 
      { 
       $added  = $rows['added_by']; 
       $date   = $rows['added_on']; 
       $question[]  = $rows['description']; 
      } 
      ?> 

      <?php 
       $answer =array(); 
       while($row = mysql_fetch_assoc($anresult)) 
       { 
        $answer[]= $row['description']; 
      ?> 

     <?php 
      for($i=0;$i<6;$i++) 
      { 
      ?> 
       <div class="row"> 
       <div class="col-sm-8"> 
       <div class="panel-group"> 
       <div class="panel panel-default">    
     <div class="panel-body"><img src="images\15.jpg" class="img-circle" style="width:20px;height:20px;"> 
     <span style="color:#949494;font-size:9;"><?php echo $added?> </span> <span style="color:#949494;font-size:9;"><?php echo $date?> </span> 
     <p><h6><?php echo $question[$i]?></h6></p> 
     <p><h6><span style="color:#949494"><?php echo $answer[$i]?></span></h6></p> 
     <h6><span style="color:#949494">Share 35</span><img src="images\02.png" class="img-circle" 
     style="width:20px;height:20px;margin-left:0.5cm;"><img src="images\03.ico" class="img-circle" 
     style="width:20px;height:20px;margin-left:0.1cm;"><img src="images\04.png" class="img-circle" 
     style="width:20px;height:20px;margin-left:0.1cm;"> <img src="images\b.png" class="img-circle" 
     style="width:20px;height:20px;margin-left:1cm;"><span style="color:#949494;margin-left:0.3cm;"><a data-toggle="modal" data-target="#myModal3">Write your post</a></span><img src="images\07.png" class="img-circle" 
     style="width:20px;height:20px;margin-left:1cm;"><span style="color:#949494;margin-left:0.3cm;">26 Answered</span><img src="images\08.png" class="img-circle" 
     style="width:20px;height:20px;margin-left:1cm;"><span style="color:#949494;margin-left:0.3cm;">52 Views</span></h6>  
    </div> 
    </div> 
    </div> 
      <?php }?>   
      <div class="row"> 
     <div class="col-sm-1"> 
      </div> 
       </div> 
        </div> 
         </div> 
         </div>      
<br>    
<hr> 
</br>  
    <div class="container"> 
     <div class="row"> 
     <div class="col-sm-1"> 
     </div> 
+0

面板的大小是什麼意思?你可以把截圖,以便我們可以理解這個問題。 –

+0

我在這裏放置屏幕截圖 –

+0

對不起,我不允許嵌入圖片becoz我是該網站的新手 –

回答

0

首先就是不要在視圖中包含連接幷包含模板層。看看PHP的正確方法一開始:http://www.phptherightway.com/#templating,也或許look at a framework

第二件事是使用alternate syntax for if/for/etc,整理你的壓痕(也瞭解有效的HTML作爲p標籤內嵌套H6是不正確的)。一旦你正確縮進,看到你的外部div s在循環中並沒有全部關閉,所以你在循環中嵌套行,這就是爲什麼它們每次都變小的原因。

<?php for($i=0;$i<6;$i++): ?> 
    <div class="row"> 
     <div class="col-sm-8"> 
      <div class="panel-group"> 
       <div class="panel panel-default">    
        <div class="panel-body"> 
         <img src="images\15.jpg" class="img-circle" style="width:20px;height:20px;"> 
         <span style="color:#949494;font-size:9;"><?php echo $added?> </span> 
         <span style="color:#949494;font-size:9;"><?php echo $date?> </span> 
         <p><h6><?php echo $question[$i]?></h6></p> 
         <p><h6><span style="color:#949494"><?php echo $answer[$i]?></span></h6></p> 
         <h6> 
          <span style="color:#949494">Share 35</span> 
          <img src="images\02.png" class="img-circle" 
     style="width:20px;height:20px;margin-left:0.5cm;"> 
          <img src="images\03.ico" class="img-circle" 
     style="width:20px;height:20px;margin-left:0.1cm;"> 
          <img src="images\04.png" class="img-circle" 
     style="width:20px;height:20px;margin-left:0.1cm;"> 
          <img src="images\b.png" class="img-circle" 
     style="width:20px;height:20px;margin-left:1cm;"> 
          <span style="color:#949494;margin-left:0.3cm;"><a data-toggle="modal" data-target="#myModal3">Write your post</a></span> 
          <img src="images\07.png" class="img-circle" 
     style="width:20px;height:20px;margin-left:1cm;"> 
          <span style="color:#949494;margin-left:0.3cm;">26 Answered</span> 
          <img src="images\08.png" class="img-circle" 
     style="width:20px;height:20px;margin-left:1cm;"> 
          <span style="color:#949494;margin-left:0.3cm;">52 Views</span> 
         </h6>  
        </div> 
       </div> 
      </div> 
     <?php endfor; ?>    
     <div class="row"> 
      <div class="col-sm-1"> 
      </div> 
     </div> 
    </div> 
</div> 
</div>      
<br>    
<hr> 
</br>  
<div class="container"> 
    <div class="row"> 
     <div class="col-sm-1"> 
     </div> 

還有一些其他的東西,你應該看看,像LIMIT語句在SQL只拉了回來,你需要(在一分鐘你拉回來都行,但永遠只顯示第6)數據。