欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

一段查询代码多处使用可以吗解决办法

程序员文章站 2022-06-03 23:23:32
...
一段查询代码多处使用可以吗


$bliang='这是个变量'
$sql=SELECT * FROM A表 WHERE cart LIKE '%.$bliang.%'
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){

…………
}


上边是查询代码 然后我使用它时 只需要这样 比如 $row[$bliang='分类2'] 这样就可以分类2下的内容

$row[$bliang='分类3'] 就显示分类3下的内容

这样的需求 要怎么样实现呢

------解决方案--------------------
写成函数啊,我也是刚学php,我给你一个我自己做的类参考下吧,所有数据库操作都在这里了

//
------解决方案--------------------
PHP version 5.3
// 数据库操作类 Order by phuai007
// Date 2014/2
class my_sql {
public $dsn = 'mysql:host=localhost;dbname=lif2';//host为数据库连接地址,dbname为数据库名
public $user = 'root'; //数据库连接用户名
public $pass = '123456'; //对应的密码
public $names = 'SET NAMES UTF8'; //数据库查询编码
//查询数据库返回结果
public function sql_select($sql) {
try {
$dbh = new PDO($this->dsn, $this->user, $this->pass);
$dbh->query($this->names);
return $dbh->query($sql);
$dbh = null;
}
catch(Exception $e) {
echo 'error: ' . $e->getMessage();
}
}
//操作单条数据(更新/删除/插入),无返回结果
public function sql_one($sql) {
try {
$dbh = new PDO($this->dsn, $this->user, $this->pass);
$dbh->exec($this->names);
$dbh->exec($sql);
$dbh = null;
}
catch(Exception $e) {
echo 'error: ' . $e->getMessage();
}
}
//操作多条数据(更新/删除),无返回结果
public function sql_more($sql, $str) {
try {
$dbh = new PDO($this->dsn, $this->user, $this->pass);
$dbh->exec($this->names);
foreach ($str as $arrs) {
$dbh->exec($sql . $arrs);
}
$dbh = null;
}
catch(Exception $e) {
echo 'error: ' . $e->getMessage();
}
}

//参数化查询数据库返回结果(单条)
public function cs_sql_select($sql,$str) {
try {
$dbh = new PDO($this->dsn, $this->user, $this->pass);
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$dbh->query($this->names);
$stmt = $dbh->prepare($sql);
$stmt->bindValue(":key", $str ,PDO::PARAM_INT);
$stmt->execute();
return $stmt;
$dbh = null;
}
catch(Exception $e) {
echo 'error: ' . $e->getMessage();
}
}
//参数化查询操作多条数据(删除/更新),无返回结果
public function cs_sql_more($sql, $str) {
try {
$dbh = new PDO($this->dsn, $this->user, $this->pass);
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$dbh->exec($this->names);
foreach ($str as $arrs) {
$stmt = $dbh->prepare($sql);
$stmt->bindValue(":key", $arrs,PDO::PARAM_INT);
$stmt->execute();
}
$dbh = null;
}
catch(Exception $e) {
echo 'error: ' . $e->getMessage();
}
}
//参数化查询操作单条数据(删除/更新),无返回结果
public function cs_sql_one($sql, $str) {
try {
$dbh = new PDO($this->dsn, $this->user, $this->pass);
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$dbh->exec($this->names);
$stmt = $dbh->prepare($sql);
$stmt->bindValue(":key", $str,PDO::PARAM_INT);
$stmt->execute();
$dbh = null;
}
catch(Exception $e) {
echo 'error: ' . $e->getMessage();
}
}


////////
}
?>
一段查询代码多处使用可以吗解决办法

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频