2015-12-08 40 views
0

我遇到問題。我想從中得到所有的行,我必須寫它來顯示。我編寫了一個代碼,但它不符合MVC的規則。我從來沒有類似的事情,所以我想從數據庫中獲得所有的行和該方法調用另一個類,我可以用這樣的:如何返回數組並將其用於來自數據庫的其他類

<td><?=$data['colummn_name']?></td> 

這是我的錯誤代碼:

public function getFiles(){ 


    $id = $_SESSION['user_logged_status']; 
    $sql = "SELECT * FROM file WHERE user_id=".$id; 
    $res = $this->conn->query($sql); 
    if($res->fetchColumn() > 0){ 
     echo "<center><table border='1' width='100%' height='auto'>"; 
     echo "<tr><td><b>Number</b><td><b>Name</b></td><td><b>Size</b></td><td><b>Date</b></td><td><b>Delete</b></td></tr>"; 
     foreach ($this->conn->query($sql) as $row) { 
     $x++; 
     $class = ($x%2 == 0)? 'whiteBackground': 'graybackground'; 
     echo "<tr class='$class'><td>".$x."</td><td>".$row['name']."</td><td>".$row['size']."</td><td>".$row['file_date']."</td><td><form method='post' action=''><input type='hidden' name='id_to_be_deleted' value=".$row['id']."/><input type='submit' name='delete_file' value='Delete'/></form></td>";   
    } 
    echo "</table></center>"; 
    } 
} 

我希望這是明確的,有人可以幫助我。

回答

0

嘗試此操作並將「html部分」移至模板,如
$ data = $ obj-> getFiles();
foreach($ data as $ k => $ v){//等}

public function getFiles(){ 

    $return = array(); 
    $id = $_SESSION['user_logged_status']; 
    $sql = "SELECT * FROM file WHERE user_id=".$id; 
    $res = $this->conn->query($sql); 
     if($res->fetchColumn() > 0){ 
     foreach ($this->conn->query($sql) as $row) { 
      $return[] = $row; 
     } 
    } 
    return $return; 
} 
相關問題