关于php+apache+mssql http://hi.baidu.com/kv2004/blog/item/e3d3bfa1e029198a46106468.html 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <?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/ 我要的是php连接mssql不是mysql还是谢谢你... mysql_? 函数换成 mssql_? 函数 当然有些写法不一样.手册上搜索:mssql 还有你的php.ini 上要开启mssql模块,不然一切都是白搭. eclipse 安装新软件错误 php怎么播放rtsp在线视频 如何实现服务器定时运行某个页面,并将结果发送到用户的邮箱中 为什么我把linux下的php代码移植到windows下,都能走到,但是就是显示不出页面啊?请高手帮帮忙! php通过ADO连接excel 有熟悉discuz程序的吗 【记录的两种输出方式效率比较,高手请进!!】 怎么让Linux下的php自动运行? 请教 php.ini 中设置 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/
还是谢谢你...
换成 mssql_? 函数 当然有些写法不一样.手册上搜索:mssql