本文目录一览:
- 1、谁给个php操作mysql类并有详细使用说明或例子
- 2、php 求一个mysqli的db类注释尽可能的多,初学小白
- 3、帮忙写一个PHP,连接mysql数据库的一个类,实现连接,执行sql语句就好
- 4、PHP+MySQL 如何把针对数据库的添加,查询,修改,删除等操作做成一个PHP写的类?
- 5、PHP mysql操作类的问题
- 6、php实现mysql封装类示例
谁给个php操作mysql类并有详细使用说明或例子
下面这个,是针对php5的一个简单数据库封装类,适合学习,其他的如删除、更新等操作,你可以自己加上:
?php
class Mysql{ //首先定义一个类,首写字母大写
public $host;//服务器名,访问修饰符PUBLIC证明$host是一个公共的属情在类的内部外部都可访问,可以被继承
public $user;//用户名,是公共的属性
private $pass;//密码,问修饰符private证明$pass是私有的.只能在类的内部使用且不能被继承.
public $dbname;//数据库名,也是公共的属性.
//__construct声名这是一个造函数,定义一些初始的信息.有三个参数
public function __construct($host,$user,$pass,$dbname){
$this-host = $host;
$this-user = $user;
$this-pass = $pass;
$this-dbname = $dbname;
$link = @mysql_connect($this-host,$this-user,$this-pass)
or die("error");
@mysql_select_db($this-dbname,$link)
or die("error2");
}
//定义数据库的查寻和显示函数
function myQuery($sql){
$result = mysql_query($sql);
if(!$result){
echo "error3";
exit;
}
$num = mysql_num_rows($result);
if($num){
echo "NO".$num;
}
while($row = mysql_fetch_assoc($result)){
echo 'trtd bgcolor="#fffddd"pre'.htmlspecialchars(stripslashes($row['body']))."pre/td/tr";
}
}
}
$rutt = new Mysql('localhost','root','ssss','calvin');//实例化一个类...记住这里的参数是和构造函数的参数一样的...
$rutt-myQuery('select * from calvin_body');//运行数据库查寻并显示的函数..
?
php 求一个mysqli的db类注释尽可能的多,初学小白
mysqli一个最简单的例子,要深入封装的话可以自己再增加...
其实个人觉得mysqli已经没什麼必要封装了.....
?php
class db{ //类名
public $con; //定义句柄
public $result; //结果存取
public function __construct($Host,$User,$Pass,$DB){ //构建函数
$this-con = new mysqli($Host,$User,$Pass,$DB); //调用mysqli类
if($this-con-connect_error){ //判断是否有错误,有错误则返回连接错误代号和错误内容
return array($this-con-connect_errno,$this-con-connect_error);
}
}
public function query($sql,$type=''){ //执行查询,$sql为查询语句,$type为result mode [MYSQLI_USE_RESULT ] OR [MYSQLI_STORE_RESULT ] 执行成功返回true,否则返回false
$this-result = empty($type) ? $this-con-query($sql) : $this-con-query($sql,$type);
return !$this-result ? false : true;
}
public function insertid(){ //必须先进行query才能获得插入或更新的id
return $this-con-insert_id;
}
public function fetch($n,$t){//获取结果集,$n必选[array][assoc][field_direct][field][fields][object][row][all],$t为$n对应的可选参数,成功返回结果集
$f = 'fetch_'.$n;
return $this-result-$f($t);
}
public function __destruct(){ //销毁函数
if($this-result)$this-result-close();
if($this-con)$this-con-close();
}
public function GetError(){ //获取错误
return array($this-con-errno,$this-con-error);
}
}
$db = new db('127.0.0.1','','','test');
if(!$db-query("insert into tb (`time`,`amount`)values('1420085532','300')")){
var_dump($db-GetError());
die();
}
echo $db-insertid(),PHP_EOL;
$db-query('select * from tb');
while($arr = $db-fetch('array',MYSQLI_NUM)){
echo $arr['0'],' ',$arr['1'],' ',$arr['2'],' ',PHP_EOL;
}
帮忙写一个PHP,连接mysql数据库的一个类,实现连接,执行sql语句就好
class mysql{
private $name;
private $host;
private $pw;
private $table_name;
private $bianma;
function __construct($h,$n,$p,$b){
$this-name=$n;
$this-host=$h;
$this-pw=$p;
$this-conn();
$this-bianma=$b;
$this-bianma();
}
function conn(){
return mysql_connect("$this-host","$this-name","$this-pw");
}
function db($table){
mysql_select_db("$table");
}
function query($sql=""){
return mysql_query("$sql");
}
function bianma(){
mysql_query("set names '$this-bianma'");
}
}
$mysql=new mysql("localhost","root","","GBK");
$mysql-db("mynews");
PHP+MySQL 如何把针对数据库的添加,查询,修改,删除等操作做成一个PHP写的类?
类我就不写了,简单的说function吧
function selectMysql ($columns, $table, $conds=false, $extra=false) {
if (count($columns)) $col = join(",", $columns);
else return false;
$cond = "";
if ($conds) $cond = "WHERE" . join(",", $conds);
$ex = "";
if ($extra) $ex = $extra;
$result = array();
$q = "SELECT $col FROM $table $cond $ex";
$s = mysql_query($q);
while ($r = mysql_fetch_assoc($r)) $result[] = $r;
if (count($result)) return $result;
return false;
}
就写一个select吧 其他类似。
不过我感觉这样写意义不是很大呀~ sql操作最重要的column table conditions 等等你还是要从外面传。
这个函数的column和condition接受数组(你改成str也行)
table和extra(主要是为了可以放点limit啊之类的)传入str。
返回一个二维数组(如果有值的话),$result[]对应sql里的一行记录。 $result[][]就是某行某列了。
PHP mysql操作类的问题
你是想用填入一个数组然后自动解析出SQL语句么?
我给你个思路吧...
SELECT [select options] FROM [tables] [CONDITION]
首先是select options,一般有查询COUNT(*)、*或者指定一些查询值
所以可以把select options的选项定义在一个数组中的一个新的组
也就是
$array = array(
"SELECT" = array("a", "b")
);
你需要循环SELECT的值,然后解析成SQL
解析出来大概就是 SELECT a,b FROM ...
然后table,这个好说.. 直接给个固定值
最麻烦就是后面的CONDITION,也就是 SELECT **** WHERE a = 'a' 之类的东西
这个你可以作为常项
array(
“SELECT” = array("a","b"),
"username" = "mutou"
);
你直接循环这个单一数组,把SELECT单列出来,后面的用else,然后进行key和value的提取,获取值填入SQL
这段解析出来应该是 SELECT a,b FROM table WHERE username = "mutou"
其他SELECT的常用参数还有ORDER,LIMIT等,可以用同样的办法
最近写了一个比较简单的SELECT类.. 所以暂说这么多了
php实现mysql封装类示例
php封装mysql类
复制代码
代码如下:
?php
class
Mysql
{
private
$host;
private
$user;
private
$pwd;
private
$dbName;
private
$charset;
private
$conn
=
null;
public
function
__construct()
{
$this-host
=
'localhost';
$this-user
=
'root';
$this-pwd
=
'root';
$this-dbName
=
'test';
$this-connect($this-host,$this-user,$this-pwd);
$this-switchDb($this-dbName);
$this-setChar($this-charset);
}
//负责链接
private
function
connect($h,$u,$p)
{
$conn
=
mysql_connect($h,$u,$p);
$this-conn
=
$conn;
}
//负责切换数据库
public
function
switchDb($db)
{
$sql
=
'use'
.
$db;
$this-query($sql);
}
//负责设置字符集
public
function
setChar($char)
{
$sql
=
'set
names'
.
$char;
$this-query($sql);
}
//负责发送sql查询
public
function
query($sql)
{
return
mysql_query($sql,$this-conn);
}
//负责获取多行多列的select结果
public
function
getAll($sql)
{
$list
=
array();
$rs
=
$this-query($sql);
if
(!$rs)
{
return
false;
}
while
($row
=
mysql_fetch_assoc($rs))
{
$list[]
=
$row;
}
return
$list;
}
public
function
getRow($sql)
{
$rs
=
$this-query($sql);
if(!$rs)
{
return
false;
}
return
mysql_fetch_assoc($rs);
}
public
function
getOne($sql)
{
$rs
=
$this-query($sql);
if
(!$rs)
{
return
false;
}
return
mysql_fetch_assoc($rs);
return
$row[0];
}
public
function
close()
{
mysql_close($this-conn);
}
}
echo
'pre';
$mysql
=
new
Mysql();
print_r($mysql);
$sql
=
"insert
into
stu
values
(4,'wangwu','99998')";
if($mysql-query($sql)){
echo
"query成功";
}else
{
echo
"失败";
}
echo
"br
/";
$sql
=
"select
*
from
stu";
$arr
=
$mysql-getAll($sql);
print_r($arr);
?