您的位置:

php写一个操作mysql的类(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);

?