http://hi.baidu.com/kv2004/blog/item/e3d3bfa1e029198a46106468.html

解决方案 »

  1.   

     <?php 
    /*
    ************************************
                 动态生成insert语句的函数,
     第一个参数是要插入数据的表
     第二个参数是要插入的数据,类型是数组,其中数组的下标是要插入的字段名,对应的值是要插入的值
    返回动态生成的sql语句,本函数仅在内部使用
    ************************************
    */
         function insert($table,$array){
        $head="INSERT INTO ";
    $str1="";
    $str2="";
    $no=0;
    foreach($array as $col=>$value){
       $no++;
       if($no==1){
          $str1.=$col;
      $str2.="'".$value."'";
       }else{
         $str1.=", ".$col;
     $str2.=",'".$value."'";
       }
       
    }
    $query=$head.$table."(".$str1.") VALUES (".$str2.");";
    return $query;
    }/*
    **************************************************
          动态生成update语句的函数
        第一个参数是要修改的表的名字
        第二个参数是要修改的数据,其中数组的下标是要小的数据列名,数组的值是要修改的数据列的目标值
        第三个参数是查询的出WHERE子句,必须要符合SQl语句的语法要求
    **************************************************
    */
             function update($table,$array,$where){
              $str="";
      foreach($array as $name=>$col){
           if($str==""){
             $str.="SET ".$name." = '".$col."'";
      }else{
         $str.=",".$name." = '".$col."'";
      }
      }
      $query="UPDATE ".$table." ".$str." ".$where.";";
      return $query;
      }
    /*
    ************************************
                             进行简单数据库操作的类
      主要提供四个函数:
                      1。 noreturnquery($query)    //返回 true 或者 false
                      2.  singlequery($query);     //返回一行查询结果(类型是一维数组),如果查询不到结果或查询到的结果不是一行,则返回false
                      3.  multilinequery($query)   //返回一个查询结果(二维数组),如果查询不到结果返回NULL
                      4.  linenumquery($query)       //返回查询到的行数
                      5。 directquery($query)       //返回未经处理的查询结果
       四个函数的参数都是相应的查询语句
    **************************************
    */
      class sql{  
          private $conn;
         function __construct(){
           $conn=mysql_connect("数据库服务主机:3306","用户名","密码");
       if(!$conn){
       ?>
       <script language="javascript"> 
           alert("数据库连接失败,请稍后试!!");
       </script>
       <?php
       
       exit;
       }
         }  public function directquery($sql){//直接查询并返回查询得到的 resource类型的出对象
         mysql_select_db("数据库名");
                 $result=mysql_query($sql); 
                 return $result;      }
     /*适用于无返回的查询,如果查询语句执行成功,则返回true,否则返回false*/
     public  function noreturnquery($sql){
         mysql_select_db("数据库名");
    // //echo $sql;
     mysql_query($sql);
    // //echo "数据库名";
     ////echo $sql;
     if(mysql_affected_rows()==1){
         mysql_close();
                        return true;
     }
     mysql_close();
     
     return false;
     }
     /*适用于查询结果是一行的数据库查询,如果查询得到的结果不是一行,则返回NULL
     第一个参数是要查询的数据库,第二个参数是SQL语句,返回的是查询得到的一个一维数组*/
     public  function singlequery($sql){
          mysql_select_db("数据库名");
      $result=mysql_query($sql);
      if(mysql_num_rows($result)!=1){
         mysql_close();
         return NULL;
      }
      $row=mysql_fetch_array($result);
      mysql_close();
      return $row;
     }
     /*适用于查询结果是1行或者多行的查询,如果查询不到结果,则返回NULL,如果可以查询到,则返回一个二维的数组*/
     public  function multilinequery($sql){
          mysql_select_db("数据库名");
     //////////////////////////////////////////////////////////
                      mysql_query("SET character SET 'gb2312' ;");
      $result=mysql_query($sql);
      if(mysql_num_rows($result)==0){
         mysql_close();
     return NULL;
      }
      $row=mysql_fetch_assoc($result);
      $no=0;
      while($row){ 
         
     $jing[$no]=$row;
     $no++;
     ////echo $no;
     ////echo $row["name"];
                 $row=mysql_fetch_assoc($result);
     
              }
                     mysql_close();
      return $jing;
     }
     /*适用于需要查询满足某一条件的记录数有多少个的查询,返回值是满足要求的记录的条数*/
       public  function linenumquery($sql){
          mysql_select_db("数据库名");
      ////echo $sql;
      ////echo "ddsgfsdfg".$result;
      $result=mysql_query($sql);
      
      $num=mysql_num_rows($result);
      mysql_close();
      return $num;
      
     }
        }
    /*
    ***************************************************************************************************
                                        提供更高级的数据查询的类
     主要有三个函数:
            1.   insertquery($table,$array),两个参数,第一个是要插入数据的表,第二个是要插入数据的数组
            2.   maxquery($table,$col)  两个参数第一个是要查询的数据表,第二个是要查询最大值的列
            3.   updatequery($table,$array)  和insertquery()类似,第一个是要进行数据操作的表,第二个是要更改的数据
                 
    ***************************************************************************************************
    */
       class supersql{
            private $conn;
         function __construct(){
           $conn=mysql_connect("数据库服务主机:3306","用户名","密码");
       if(!$conn){
       ?>
       <script language="javascript"> 
           alert("数据库连接失败,请稍后试!!");
       </script>
       <?php
       
       exit;
       }
         }  public function insertquery($table,$a){
        mysql_select_db("数据库名");
    $query=insert($table,$a);
                   // //echo $query;
    echo $query;
    $sqlobj=new sql();
    $result=$sqlobj->noreturnquery($query);
    if($result){
                       mysql_close();
       return true;
    }
                  
    return false;
     }
       public function maxquery($table,$col){
          $query="SELECT ".$col." FROM ".$table.";";
      $sqlobj=new sql();
      $result=$sqlobj->multilinequery($query);
      $max=0;
      $num=0;
      foreach($result as $row){
         $num=$row[$col];
     ////echo $num."   ";
            if($max<$num) {
       $max=$num;
       
    }
      }
                       mysql_close();
     return $max;
        }
      public function updatequery($table,$array,$where){
          mysql_select_db("thi-everfocus");
          $query=update($table,$array,$where);
          echo $query;
          mysql_query($query);
          if(mysql_affected_rows()==0){
                       mysql_close();
             return fasle;
          }
                       mysql_close();
          return true;
       }}
       ?>
    支持: http://www.jeff1987.0fees.net/
      

  2.   

    我要的是php连接mssql不是mysql
    还是谢谢你...
      

  3.   

    mysql_? 函数
    换成 mssql_? 函数 当然有些写法不一样.手册上搜索:mssql
      

  4.   

    还有你的php.ini 上要开启mssql模块,不然一切都是白搭.