Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-OOP-Mysql查询_Php_Mysql_Oop - Fatal编程技术网

PHP-OOP-Mysql查询

PHP-OOP-Mysql查询,php,mysql,oop,Php,Mysql,Oop,我对PHP OOP非常陌生,对于一个简单的MYSQL查询我有一个问题。 我有一个index.php页面,希望在其中从query.class文件输出结果 这是我的方法 public function Query($rowName) { $q = mysql_query("SELECT * from p_tuts"); while($row = mysql_fetch_array($q)) { echo $row[$rowName]; } } 现在,这很好

我对PHP OOP非常陌生,对于一个简单的MYSQL查询我有一个问题。 我有一个index.php页面,希望在其中从query.class文件输出结果

这是我的方法

 public function Query($rowName) {

   $q = mysql_query("SELECT * from p_tuts");

   while($row = mysql_fetch_array($q)) {

       echo $row[$rowName];
   }
 }
现在,这很好,我可以通过index.php文件调用它

$Database->Query('tut_content');
但我的问题是,我想将每个内容块包装在DIV容器中,不想在类文件中回显HTML代码,所以我想在索引文件中回显行的数据,但不确定如何做


好心的问候

你不想在课堂上做回音

您想返回该行

这边

 $Database->Query('tut_content'); 

可以在DIV/中包装您需要的任何内容…

将行作为数组传回

public function Query($colName) {

    $q = mysql_query("SELECT * from p_tuts");
    $rows = array();
    while($row = mysql_fetch_assoc($q)) {
        $rows[] = $row[$colName];
    }
    return $rows;
}
无论如何,这种方式更好,因为它使数据库代码远离输出代码(即
echo

然后按如下方式输出:

<?php
$results = $Database->Query('tut_content');
foreach ($results as $result): ?>
    <div><?php echo $result; ?></div>
<?php endforeach; ?>

OOP函数与普通函数相同。您拥有的函数只回显
$row[$rowname]
。您可以修改它以使其回显
$row[$rowname]
,或者使其以数组形式返回行值:

while($row = mysql_fetch_array($q)) {
   $output[] = $row[$rowName];
}
return $output;
使用MVC模式

数据库属于该模型


祝你好运,或者你可以使用我最喜欢的数据库层。它很小但很聪明:-)

是的,我知道,尽管问题是,每一行都需要有自己的div类,如果我像这样回显它,它将全部封装在一个div中:)您还可以粘贴一些代码,以便有人可以建议将div放在哪里,也可以帮助理解您到底想要什么。啊,谢谢,太好了!:)我想我最好多读书!这让我疯狂了一段时间。我的答案最好是用上面的例子:-)我现在的问题是,一旦你返回了行,有没有更具体的方法,例如返回不同的值$row->title,$row->name,$row->href例如?@user863739:你的意思是在行中传递多个列,而不是只传递一个列?是的,这是正确的Jonah。尽管我会将title和href变量放在我的类中,但我几乎已经找到了答案?