2015-12-08 34 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; 
} 
相关问题