gpt4 book ai didi

php - 在 PHP 中使用 OOP 查询数据库

转载 作者:行者123 更新时间:2023-11-30 00:00:17 25 4
gpt4 key购买 nike

我是 PHP 中的 OOP 新手,我正在尝试创建一个类,然后查询数据库。 ATM 代码看起来像这样,我陷入了查询部分。查询没问题,但它应该使用创建的类。有人可以帮我吗?

<?php
class Products {

//objekto kintamieji
public $category_id;
public $product_id;

public function __construct($category_id, $product_id){
$this->category_id = $category_id;
$this->product_id = $product_id;
}

public function query_the_database() {
if($xml->action == 'getProducts') {
$query = mysql_query("SELECT * FROM product WHERE category_id = 1 ORDER BY product_id");
while($row = mysql_fetch_object($query)){
$row->pvm = $row->price - round($row->price*100/121, 2);
$prod[] = $row;
}
}
}
}

最佳答案

你真的应该使用MySQLi或者,更好的是,PDO在你的类里面。

而且,我强烈建议您在单独的类(class)中建立连接。因此,您有两个页面:db.class.phpproducts.class.php

嗯,基本教程:

建立连接:

$db=new PDO("mysql:host=HOST_NAME;port=PORT;dbname=DB_NAME");

执行普通查询:

$db->execute("select * from table");

使用参数执行查询(准备好的语句):

$sql=$db->prepare("select * from table where param1=:p1 and param2=:p2");
$sql->bindParam(":p1", $p1); //bindParam only accepts variables
$sql->bindValue(":p2", "Value"); //bindValue only accepts raw values
$sql->execute();

获取准备好的语句的值:

$array=$sql->fetchAll(); //that will be an array containing values in column names that are in row numbers. Like this: Array([0]=>Array([0]=>"value1" [column1]=>"value1") [1]=>Array([0]=>"value2" [column1]=>"value2"))

但是请阅读它,因为它会对您有很大帮助。

关于php - 在 PHP 中使用 OOP 查询数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25098795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com