php 列表数据,获取数据列表

mvc:V视图

产品信息型号价格产品名称产地操作

$i++;

if($i % 2 == 0)

echo "

";

else

echo "

";

echo"

{$porduct['pro_name']}{$porduct['protype_id']}{$porduct['price']}{$porduct['pinpai']}{$porduct['chandi']} 删除";

} ?>

 列表数量<?php echo $porductCount ?>

Controller:

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

header("Content-Type: text/html; charset=UTF-8");

require'productModel.php';

$porduct = new Porduct();

$a =isset($_GET['a']) ? $_GET['a']:'list';

if ($a =='list'){

$i=0;

//获取数据列表

$porductlist = $porduct->getporductList();

$porductCount = $porduct->getCount();

//加载HTML代码

require 'product.html';

}else if($a =='delete'){

$por_id = $_GET['id'];

if($porduct -> delete($por_id)){

echo "删除成功。。。";

header("refresh:2;url=productController.php?a=list");

}else{

echo "删除失败。。。";

header("refresh:2;url=productController.php?a=list");

}

}

controller

Model:

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

require 'MySQLDB.class.php';

/**

*

*/

class Porduct

{

protected $_db;

public function __construct()

{

$this-> _db = MySQLDB::GetDB(array(

'localhost' =>'127.0.0.1' ,

'user' =>'root' ,

'pass' =>'root' ,

'port' =>'3306' ,

'charset' =>'utf8',

'dbname' =>'userinfolist',

));

}

//查询数据列表

public function getporductList()

{

$sql= "SELECT * FROM product WHERE pro_id > -1";

return $this->_db->GetRows($sql);

}

// 查询列表数量

public function getCount()

{

$sql= "SELECT COUNT(*) FROM product WHERE pro_id > -1";

return $this->_db->GetOneData($sql);

}

// 删除

public function delete($por_id)

{

$sql ="DELETE FROM product WHERE Pro_id = {$por_id}";

return $this->_db->query($sql);

}

}

productModel.php

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

/*

mysql的数据库工具类,其作用是:由它来完成数据的各种常见操作:

设计一个类,这个类要达到这个要求:

1,一实例化该类(得到一个对象),就连接上了目标数据库;

2,这个对象还可以选择(更换)新的数据库。

7,设计为单例模式

3,这个对象还可以执行“增删改”操作,并返回执行的结果——true或false

4,这个对象可以执行“返回一行数据”的查询操作,并返回一个一维数组!

5,可以返回多行多列数据(实际是二维数组);

6,可以返回一行一列数据(实际是一个标量数据);

*/

class MySQLDB{

private $link = null; //用于存放连接后的“连接资源”

private $host;

private $port;

private $user;

private $pass;

private $charset;

private $dbname = null; //用于存放当前连接的数据库名

//1,一实例化该类(得到一个对象),就连接上了目标数据库;

private function __construct($conf){

//考虑传过来的链接信息的默认值问题,并存储到当前对象的属性中

$this->host = empty($conf['host']) ? "localhost" : $conf['host'];

$this->port = empty($conf['port']) ? "3306" : $conf['port'];

$this->user = empty($conf['user']) ? "root" : $conf['user'];

$this->pass = empty($conf['pass']) ? "" : $conf['pass'];

$this->charset = empty($conf['charset']) ? "utf8" : $conf['charset'];

$this->dbname = empty($conf['dbname']) ? "php46" : $conf['dbname'];

$this->link = mysql_connect("{$this->host}:{$this->port}","{$this->user}","{$this->pass}")

or die('连接数据库失败!');

mysql_query("set names {$this->charset}", $this->link); //mysql_set_charset("utf8");

mysql_query("use {$this->dbname}", $this->link); //myql_select_db("XX数据库");

}

static function GetDB($conf){

static $db = null; //用于存储本类的唯一对象

if(is_null($db)){

$db = new self($conf);

}

return $db;

}

//2,这个对象还可以选择(更换)新的数据库。

function select_db($db){

mysql_query("use $db", $this->link);

$this->dbname = $db;

}

//3,这个对象还可以执行“增删改”等无返回数据的操作,并返回执行的结果——true或false

function exec($sql){

// $result = mysql_query($sql, $this->link);

// if($result === false){

// echo "

数据库执行失败,请参考如下信息:";

// echo "
错误信息:" . mysql_error();

// echo "
错误代号:" . mysql_errno();

// echo "
错误语句:" . $sql;

// die();

// }

$result = $this->query( $sql );//此行代替以上n行

return $result;

}

//4,这个对象可以执行“返回一行数据”的查询操作,并返回一个一维数组!

//类似这样的语句:select * from user_info where id = 8;

function GetOneRow($sql){

$result = $this->query( $sql );//此行代替以上n行

$rec = mysql_fetch_assoc($result); //从结果集获得一行数据,并作为关联数组

return $rec;

}

//5,这个对象可以执行“返回多行数据”的查询操作,并返回一个二维数组!

//类似这样的语句:select * from user_info where id > 8;

function GetRows( $sql ){

$result = $this->query($sql);//找query方法,获得结果集!

$arr = array(); //空数组

while ($rec = mysql_fetch_assoc($result)){

$arr[] = $rec; //$rec是一维数组

}

return $arr; //这就是二维数组

}

//6,这个对象可以执行“返回一行一列数据”的查询操作,并返回一个“标量数据”(单个数据)!

//类似这样的语句:select age from user_info where id = 8;

function GetOneData( $sql ){

$result = $this->query($sql);//找query方法,获得结果集!

$rec = mysql_fetch_row($result);

$data = $rec[0];

return $data; //这就是单个数据

}

//此方法专门执行sql语句,包括所有增删改查等等,并处理执行失败的情形

function query( $sql ){

$result = mysql_query($sql, $this->link);

if($result === false){

echo "

数据库执行失败,请参考如下信息:";

echo "
错误信息:" . mysql_error();

echo "
错误代号:" . mysql_errno();

echo "
错误语句:" . $sql;

die();

}

return $result;

}

function close_link(){

mysql_close($this->link);

}

}

MySQLDB.class.php

希望与广大网友互动??

点此进行留言吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值