因胸联盟 发表于 2015-2-4 00:18:16

PHP网页设计本人编了一个mysql类。请斧正

我先把我自己学习PHP的过程做一下概括:mysql   文件名mysql.class.php
<?
//###################### Start Introduce #######################################
// mysql毗连类
// author: bluemaple , emaile: bluemaple@x263.net
// 可以履行普通mysql号令,如insert,delete,select,update
// 利用办法:在需求的文件后面到场
// require("./mysql.class.php");
// $DB=new DB_MYSQL;            // 加载类
// $DB->dbServer="localhost";   // 毗连数据库地址
// $DB->dbUser="root";          // 用户名
// $DB->dbPwd="";               // 暗码
// $DB->dbDatabase="we";      // 数据库称号
// $DB->connect();             // 毗连数据库
// 利用中可以更改数据库
// 可以用到的函数申明
// query($sql,$dbbase);         // 可以直接履行
// query_first($sql,$dbbase);   // 查询前往只要一笔记录,$sql为sql语句,$dbbase为你选者数据库(可以不要)
// fetch_array($sql,$dbbase);   // 查询前往一组纪录,可以用num_rows失掉前往的数字
// insert,update,delete 皆为履行号令,个中可用$affected_rows;失掉前往的数量
// 在insert时,可以用insert_id失掉拔出了局的前往id数
// count_records($table,$index,$where,$dbbase)// 为失掉一个表纪录的数量,$table为表名,$index为key,$where为前提,$dbbase为数据库,后两个可以不选
//####################### End Introduce ########################################

class DB_MYSQL          // 数据库mysql查询的类
{   
var $dbServer;      // 数据库毗连办事地址
var $dbDatabase;      // 所选择的数据库,初始形态
var $dbbase="";       // 前面可以改动的
var $dbUser;          // 上岸用户名
var $dbPwd;         // 上岸用户暗码
var $dbLink;          // 数据库毗连指针
var $query_id;      // 履行query号令的指针
var $num_rows;      // 前往的条目数
var $insert_id;       // 传回最初一次利用 INSERT 指令的 ID
var $affected_rows;   // 传回query号令所影响的列数量
                  // INSERT、UPDATE 或 DELETE 所影响的列 (row) 数量。
                  // delete 假如不带where,那末则前往0
   
function connect($dbbase="")    // 毗连数据库函数,包含毗连数据库
      {
         global $usepconnect;   // 是不是采取永世毗连,$userpconnect在内部设置。
         if ($usepconnect==1){
                $this->dbLink=@mysql_pconnect($this->dbServer,$this->dbUser,$this->dbPwd);
                              } else {
                $this->dbLink=@mysql_connect($this->dbServer,$this->dbUser,$this->dbPwd);
                }
          if(!$this->dbLink) $this->halt("毗连失足,没法毗连!!!");
          if ($dbbase=="") {
            $dbbase=$this->dbDatabase;
            }                        
      if(!mysql_select_db($dbbase, $this->dbLink))// 毗连数据库
                        { $this->halt("不克不及够用这个数据库,请反省这个数据库是不是准确!!!");}
          }

function change_db($dbbase=""){ // 改动数据库
      $this->connect($dbbase);
      }

function query_first($sql,$dbbase=""){ // 前往一个值的sql号令
      $query_id=$this->query($sql,$dbbase);
      $returnarray=mysql_fetch_array($query_id);
      $this->num_rows=mysql_num_rows($query_id);
      $this->free_result($query_id);      
      return $returnarray;
      }

function fetch_array($sql,$dbbase="",$type=0){ // 前往一个值的sql号令
                           // type为传递值是name=>value,仍是4=>value
      $query_id=$this->query($sql,$dbbase);
      $this->num_rows=mysql_num_rows($query_id);
      for($i=0;$i<$this->num_rows;$i++){
          if($type==0)
            $array[$i]=mysql_fetch_array($query_id);
          else
            $array[$i]=mysql_fetch_row($query_id);
          }
      $this->free_result($query_id);
      return $array;
      }

function delete($sql,$dbbase=""){ // 删除号令
      $query_id=$this->query($sql,$dbbase);
      $this->affected_rows=mysql_affected_rows($this->dbLink);
      $this->free_result($query_id);
      }

function insert($sql,$dbbase=""){ // 拔出号令
      $query_id=$this->query($sql,$dbbase);
      $this->insert_id=mysql_insert_id($this->dbLink);
      $this->affected_rows=mysql_affected_rows($this->dbLink);
      $this->free_result($query_id);
      }

function update($sql,$dbbase=""){//更新号令
      $query_id=$this->query($sql,$dbbase);
      $this->affected_rows=mysql_affected_rows($this->dbLink);      
      $this->free_result($query_id);
      }

function count_records($table,$index="id",$where="",$dbbase=""){ // 纪录总共表的数量
                                                   // where为前提
                                                   // dbbase为数据库
                                                   // index为所选key,默许为id
      if($dbbase!="") $this->change_db($dbbase);
      $result=@mysql_query("select count(".$index.") as 'num' from $table ".$where,$this->dbLink);
      if(!$result) $this->halt("毛病的SQL语句: ".$sql);
      @$num = mysql_result($result,0,"num");   
      return $num;
      }

function query($sql,$dbbase=""){   // 履行queyr指令
      if($dbbase!="") $this->change_db($dbbase);
    $this->query_id=@mysql_query($sql,$this->dbLink);
    echo "d";
    if(!$this->query_id) $this->halt("毛病的SQL语句: ".$sql);
    return $this->query_id;
      }
   
function halt($errmsg)// 数据库失足,没法毗连胜利
      {
            $msg="<h3><b>数据库失足!</b></h3><br>";
            $msg.=$errmsg;
            echo $msg;
            die();
      }

function free_result($query_id)// 释放query选者
      {
      @mysql_free_result($query_id);
      }

function close()      //封闭数据库毗连
      {
      mysql_close($this->dbLink);
      }
}
?>

以下是利用办法

text.php
<?
require("./mysql.class.php");
$DB=new DB_MYSQL;
$DB->dbServer="localhost";
$DB->dbUser="root";
$DB->dbPwd="";
$DB->dbDatabase="we";
$DB->connect(); // 毗连数据库
?>
不断巩固,摸透大部分PHP常用函数,并可理解OOP,MYSQL优化,以及模板

透明 发表于 2015-2-4 11:14:16

基础有没有对学习php没有太大区别,关键是兴趣。

柔情似水 发表于 2015-2-6 21:04:32

基础有没有对学习php没有太大区别,关键是兴趣。

若天明 发表于 2015-2-7 20:00:22

使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的

飘飘悠悠 发表于 2015-2-9 04:41:53

小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。

再见西城 发表于 2015-2-26 22:48:56

微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox支持的不是很好,所以能少用还是少用的好。

活着的死人 发表于 2015-3-3 07:29:11

没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。

再现理想 发表于 2015-3-3 23:37:26

建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。

精灵巫婆 发表于 2015-3-5 09:46:32

说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。

蒙在股里 发表于 2015-3-7 09:08:52

你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。

莫相离 发表于 2015-3-10 22:16:12

Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81

深爱那片海 发表于 2015-3-11 17:14:23

在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。

山那边是海 发表于 2015-3-19 02:59:05

本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。

小魔女 发表于 2015-3-25 06:07:26

当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,

冷月葬花魂 发表于 2015-4-1 16:33:58

兴趣是最好的老师,百度是最好的词典。

谁可相欹 发表于 2015-4-3 03:25:55

基础有没有对学习php没有太大区别,关键是兴趣。

小妖女 发表于 2015-4-4 11:14:41

我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:

金色的骷髅 发表于 2015-4-9 04:02:15

这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。

灵魂腐蚀 发表于 2015-4-13 17:57:11

对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。

不帅 发表于 2015-4-19 06:14:11

实践是检验自己会不会的真理。
页: [1]
查看完整版本: PHP网页设计本人编了一个mysql类。请斧正