我有个问题。我想从sql获取全部行,并且必须将其写入显示。我写了一个代码,但是它不符合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>";
}
}
我希望情况很清楚,有人可以帮助我。
尝试此操作并将“ html部分”移至模板,例如
$ data = $ obj-> getFiles();。
foreach($ data as $ k => $ v){// etc。}
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;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句