2013-02-11 106 views
0

假设我的html布局中有3列/ div /节,我们称它们为cat1,cat2,cat3。然后我有一个名为“内容”的表的数据库。在该表中我有字段ID,标题,内容,类别。使用PHP从数据库中提取具有特定参数的数据

现在我想从我的mysql表中填充这3列与他们相应的内容。例如 - 从表中获取所有内容category = cat1(对应于第一列)。

我只能做出3个函数,每个函数都有自己的参数,但我不想重复代码。我怎样才能做到这一点与一个单一的功能,但只是使用不同的参数?在我的HTML

public function displayAll_with_category ($category) { 
    $sql = $con->prepare("SELECT * FROM Table WHERE Category=?"); 
    $sql->bindParam(1, $category); 
    $sql->execute(); 
    while ($row = $sql->fetch()) { 
    echo $row['Title']; 
    } 
} 

然后:

我在想这样的事情

<div id="cat1"> 
    // Using a central class 
    <?php include('class.php'); $obj = new handler; $obj->displayAll_with_category(); ?> 
</div> 

到目前为止好,我需要以某种方式能够改变$ category参数,所以我可以使用相同的功能调用cat1/2/3的内容。我不知道该怎么做,通常我需要通过一个按钮或窗体向PHP函数发送一些东西,但这次不是这种情况。这在纯PHP中甚至可行吗?我可以想到用AJAX做这件事,但现在我想知道它是否可以用PHP完成。

回答

0

我不确定这是不是你想要的。

这将让你1类,2和3 数据我刚刚创建了一个循环的视图中的呼叫使用不同的参数功能:

<?php 
for($cont = 0; $cont<4; $cont++){ 
?> 
<div id="cat1"> 
    // Using a central class 
    <?php include('class.php'); $obj = new handler; $obj->displayAll_with_category($cont); ?> 
</div> 
<?php 
} 
?> 

哦,如果我是你,我会尝试从视图中分离逻辑,我将在视图中打印该函数的结果,而不是在其中进行。