简体   繁体   English

使用PDO和oops选择查询

[英]Select query using PDO and oops

Am new to PDO statements in PHP. PHP中的PDO语句是新的。 Am having trouble in writing query to implement pdo using oops concepts. 在编写查询以使用oops概念实现pdo时遇到麻烦。 The goal I wish to achieve is a reusable select function. 我希望实现的目标是可重用的选择功能。

public function selectpackage($table) {
    try {
        $query = $this->db->prepare("select * from $this->table");
        return $query->fetch(PDO::FETCH_ASSOC);
    }
    catch(PDOException $e)
    {
        echo 'Query failed'.$e->getMessage();
    }
}

$db is used for connecting database. $db用于连接数据库。 Now, in the page where am calling this function, I have written 现在,在调用此函数的页面中,我写了

$result = $obj->selectpackage("tbl_packages");

while($row = $result) {

          echo $row['title']."</br>";
}

Its not giving the results. 它没有给出结果。 Does anyone know where the issue is ? 有人知道问题出在哪里吗?

l have checked Siraj code , its working 我已经检查了Siraj代码,它的工作原理

class oopCrud
{  

 private $host="localhost";

 private $user="root";  
 private $db="databasename";  
 private $pass="";
 private $conn;

 public function __construct(){

 $this->conn = new PDO("mysql:host=".$this->host.";dbname=".$this->db,$this->user,$this->pass);

 }

 public function showData($table){  
 try {  
    $sql="SELECT * FROM $table";  
    $q = $this->conn->query($sql) or die("failed!");

    while($r = $q->fetch(PDO::FETCH_ASSOC)){  $data[]=$r;  }  
    return $data;

     }
    catch(PDOException $e)
    {
        echo 'Query failed'.$e->getMessage();
    }

 }   

}



$obj=new oopCrud;

$result = $obj->showData("tablename"); 
print_r($result);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM