<?php
class duoduo {
public $link;
public $webset;
public $dbserver;
public $dbuser;
public $dbpass;
public $dbname;
public $BIAOTOU;
public $sql_log=0;
public $lastsql;
public $trade_id_uid_arr=array(); //存储trade_id和uid的关系,以便后续订单直接比对
public $trade_temp=array(); //存储没有uid的临时订单,回滚数据用
public $user_temp=array(); //会员临时数据,定位会员是求得的会员信息放在这里,以便后续代码直接使用
function connect(){
$this->link = mysql_connect($this->dbserver, $this->dbuser, $this->dbpass);
if($this->link==''){
echo '数据库连接失败!';exit;
}
$query=$this->select_db($this->dbname);
if($query!=1){
$sql = "CREATE DATABASE IF NOT EXISTS `".$this->dbname."` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci";
$query=$this->query($sql);
if($query==''){
dd_exit('没有创建数据库的权限');
}
$this->select_db($this->dbname);
}
$this->query("set names utf8");
return $this->link;
}
function select_db($dbname){
return mysql_select_db($dbname,$this->link);
}
function ping(){
if(mysql_ping()==''){
$this->close();
$this->connect();
}
}
function close(){
mysql_close($this->link);
}
function query($sql,$alert=0) {
$this->lastsql = $sql;
if($alert==1){
echo $sql;
}
if($this->webset['sql_log']==1 || $this->sql_log==1){
$str=$sql.'-----'.get_client_ip().'-----'.date('H:i:s')."\r\n";
$filename=DDROOT.'/data/temp/sql/'.date('Ym').'/'.date('d').'_'.md5(DDKEY).'.log';
create_file($filename,$str,1,1);
}
if(defined('ADMIN')){
$str=get_client_ip().'-----'.$sql.'-----'.date('H:i:s')."\r\n";
$filename=DDROOT.'/data/temp/admin_sql/'.date('Ym').'/'.date('d').'_'.md5(DDKEY).'.log';
create_file($filename,$str,1,1);
}
$query=mysql_query($sql,$this->link);
if($query==''){
if($this->webset['sql_debug']==1){
$filename=DDROOT.'/data/temp/error_sql/'.date('Ym').'/'.date('d').'_'.md5(DDKEY).'.log';
create_file($filename,$this->error().'---'.$sql."\r\n",1,1);
//echo $this->error().'<br/>'.$sql;exit;
}
}
else{
return $query;
}
}
function fetch_array($query, $result_type = MYSQL_ASSOC) {
return mysql_fetch_array($query, $result_type);
}
function num_rows($query){
return mysql_num_rows($query);
}
function insert_id(){
return mysql_insert_id($this->link);
}
function free_result(&$query){
$re=mysql_free_result($query);
/*if($re!=1){
print_r(debug_backtrace());
exit;
}*/
}
function real_escape_string($var){
return $var=mysql_real_escape_string($var);
}
function error() {
return mysql_error();
}
function get_version($isformat = true) {
$rs = $this->query("SELECT VERSION();");
$row = $this->fetch_array($rs,MYSQL_NUM);
$mysql_version = $row[0];
$this->free_result($rs);
if ($isformat) {
$mysql_versions = explode(".", trim($mysql_version));
$mysql_version = number_format($mysql_versions[0] . "." . $mysql_versions[1], 2);
}
return $mysql_version;
}
function show_index($table){
$query = $this->query("SHOW INDEX FROM ".BIAOTOU.$table);
if($query!=''){
while ($arr = $this->fetch_array($query)) {
if($arr['Key_name']=='PRIMARY'){
$index_info[] = $arr['Column_name'];
}
else{
$index_info[] = $arr['Key_name'];
}
}
}
return $index_info;
}
public function con($a) {
if(!is_array($a)) return $a;
$where = '';
$temp=array();
$i = 0;
if(!is_array($a[0])){
foreach($a as $k=>$v){
$temp[]=$k."='".$v."'";
}
$where='where '.implode(' and ',$temp);
}
else{
foreach ($a as $row) {
if ($i == 0) {
$where .= ' where ';
} else {
if ($row['c'] == '') {
$where .= ' and ';
} else {
$where .= ' ' . $row['c'] . ' ';
}
}
if ($row['e'] == '') {
$row['e'] = '=';
}
$where .= $row['f'] . ' ' . $row['e'] . ' "' . $row['v'] . '"';
$i++;
}
}
return $where;
}
function get_query_conditions($query_item){
foreach($query_item as $row){
if($row['f']!=''){
if($row['v']!=='' && $row['v']!=='%%'){
if(isset($row['equal']) && $row['equal']=='in'){
$str1[] = $row['f']." ".$row['e']." ".$row['v'];
}
else{
$str1[] = $row['f']." ".$row['e']." '".$row['v']."'";
}
}
}
else{
foreach($row as $arr){
if($arr['v']!=='' && $arr['v']!=='%%'){
if($arr['e']=='in'){
$str2[] = $arr['f']." ".$arr['e']." ".$arr['v'];
}
else{
$str2[] = $arr['f']." ".$arr['e']." '".$arr['v']."'";
}
}
}
if($str2[1]!=''){
$str3='('.implode(' or ',$str2).')';
}
elseif($str2[1]=='' && $str2[0]!=''){
$str3=$str2[0];
}
else{
$str3='';
}
}
}
if(isset($str3) && $str3!='') $str1[]=$str3;
if($str1[1]!=''){
return implode(' and ',$str1);
}
elseif($str1[1]=='' && $str1[0]!=''){
return $str1[0];
}
else{
return '1=1';
}
}
function sql_to_array($sql){
$arr=array();
$query=$this->query($sql);
while ($row = $this->fetch_array($query)) {
$arr[]=$row;
}
//if(!isset($arr[1])){$arr=$arr[0];}
$this->free_result($query);
return $arr;
}
function select2arr($sql,$x=0) {
$query = $this->query($sql);
while ($row = $this->fetch_array($query)) {
$arr[] = $row;
}
if($x==0){
$re = $arr;
}
else{
$re = $arr[0];
}
$this->free_result($query);
if(!is_array($re)){$re=array();}
return $re;
}
function select($table, $sel_field, $where='1', $alert = 0) {
$arr='';
if(strstr($table,',')!=''){
$table=str_replace(',',','.$this->BIAOTOU,$table);
}
$sql = "select $sel_field from " . $this->BIAOTOU . $table . " where $where limit 1";
if ($alert == 1) {
echo $sql;
}
$query = $this->query($sql);
if ($query!='') {
while ($row = $this->fetch_array($query)) {
if(strpos($sel_field, ",")!==false or strpos($sel_field, "*")!==false) {
$arr = $row;
}
else{
$arr = array_pop($row);
}
}
$this->free_result($query);
}
return $arr;
}
function select_limit($table, $sel_field, $where='1',$limit='1', $alert = 0) {
$arr='';
if(strstr($table,',')!=''){
$table=str_replace(',',','.$this->BIAOTOU,$table);
}
$sql = "select $sel_field from " . $this->BIAOTOU . $table . " where $where limit ".$limit;
if ($alert == 1) {
echo $sql;
}
$query = $this->query($sql);
if ($query!='') {
while ($row = $this->fetch_array($query)) {
if(strpos($sel_field, ",")!==false or strpos($sel_field, "*")!==false) {
$arr = $row;
}
else{
$arr = array_pop($row);
}
}
$this->free_result($query);
}
return $arr;
}
function select_all($table, $sel_field, $where='1=1', $alert = 0) {
$arr = array ();
if(strstr($table,',')!=''){
$table=str_replace(',',','.$this->BIAOTOU,$table);
}
$sql = "select $sel_field from ".$this->BIAOTOU.$table." where $where ";
if ($alert == 1) {
echo $sql;
}
$query = $this->query($sql);
if ($query!='') {
while ($row = $this->fetch_array($query)) {
$arr[] = $row;
}
$this->free_result($query);
}
return $arr;
}
function select_all_key($table, $sel_field, $where='1=1', $key='id', $alert = 0) {
$arr = array ();
if(strstr($table,',')!=''){
$table=str_replace(',',','.$this->BIAOTOU,$table);
}
$sql = "select $sel_field from ".$this->BIAOTOU.$table." where $where ";
if ($alert == 1) {
处理淘宝导入订单订单号为0,结算订单状态不更新的问题
4星 · 超过85%的资源 需积分: 21 103 浏览量
2013-10-17
09:23:30
上传
评论 2
收藏 17KB ZIP 举报
「已注销」
- 粉丝: 11
- 资源: 22
最新资源
- 基于微信小程序的通用订票系统设计源码
- 基于ThinkPHP的轻量级PHP开发框架设计源码
- 基于CSS的响应式鲜花网站全屏效果设计源码
- 基于JavaScript的访客预约系统设计源码
- 基于Vue和ECharts的工作租房数据可视化系统设计源码
- 1040g0cg310ravpiu6ibg5pg00tsipsln3ju2d0g 2
- 基于Python的SAR图像去噪CNN-NLM设计源码
- redhat6升级到redhat7,过程redhat6.x-> redhat6.10->rehat7.9 主版本最高版本
- 基于Django的流程引擎设计源码
- 基于Node.js的Express框架与MySQL的后台管理系统设计源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈