亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? adodb-odbc.inc.php

?? asterisk用 的voip記費軟件
?? PHP
?? 第 1 頁 / 共 2 頁
字號:
<?php/* V4.94 23 Jan 2007  (c) 2000-2007 John Lim (jlim#natsoft.com.my). All rights reserved.  Released under both BSD license and Lesser GPL library license.   Whenever there is any discrepancy between the two licenses,   the BSD license will take precedence. Set tabs to 4 for best viewing.    Latest version is available at http://adodb.sourceforge.net    Requires ODBC. Works on Windows and Unix.*/// security - hide pathsif (!defined('ADODB_DIR')) die();  define("_ADODB_ODBC_LAYER", 2 );	 /*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/class ADODB_odbc extends ADOConnection {	var $databaseType = "odbc";		var $fmtDate = "'Y-m-d'";	var $fmtTimeStamp = "'Y-m-d, h:i:sA'";	var $replaceQuote = "''"; // string to use to replace quotes	var $dataProvider = "odbc";	var $hasAffectedRows = true;	var $binmode = ODBC_BINMODE_RETURN;	var $useFetchArray = false; // setting this to true will make array elements in FETCH_ASSOC mode case-sensitive								// breaking backward-compat	//var $longreadlen = 8000; // default number of chars to return for a Blob/Long field	var $_bindInputArray = false;		var $curmode = SQL_CUR_USE_DRIVER; // See sqlext.h, SQL_CUR_DEFAULT == SQL_CUR_USE_DRIVER == 2L	var $_genSeqSQL = "create table %s (id integer)";	var $_autocommit = true;	var $_haserrorfunctions = true;	var $_has_stupid_odbc_fetch_api_change = true;	var $_lastAffectedRows = 0;	var $uCaseTables = true; // for meta* functions, uppercase table names		function ADODB_odbc() 	{ 			$this->_haserrorfunctions = ADODB_PHPVER >= 0x4050;		$this->_has_stupid_odbc_fetch_api_change = ADODB_PHPVER >= 0x4200;	}			// returns true or false	function _connect($argDSN, $argUsername, $argPassword, $argDatabasename)	{	global $php_errormsg;				if (!function_exists('odbc_connect')) return null;				if ($this->debug && $argDatabasename && $this->databaseType != 'vfp') {			ADOConnection::outp("For odbc Connect(), $argDatabasename is not used. Place dsn in 1st parameter.");		}		if (isset($php_errormsg)) $php_errormsg = '';		if ($this->curmode === false) $this->_connectionID = odbc_connect($argDSN,$argUsername,$argPassword);		else $this->_connectionID = odbc_connect($argDSN,$argUsername,$argPassword,$this->curmode);		$this->_errorMsg = isset($php_errormsg) ? $php_errormsg : '';		if (isset($this->connectStmt)) $this->Execute($this->connectStmt);				return $this->_connectionID != false;	}		// returns true or false	function _pconnect($argDSN, $argUsername, $argPassword, $argDatabasename)	{	global $php_errormsg;			if (!function_exists('odbc_connect')) return null;				if (isset($php_errormsg)) $php_errormsg = '';		$this->_errorMsg = isset($php_errormsg) ? $php_errormsg : '';		if ($this->debug && $argDatabasename) {			ADOConnection::outp("For odbc PConnect(), $argDatabasename is not used. Place dsn in 1st parameter.");		}	//	print "dsn=$argDSN u=$argUsername p=$argPassword<br>"; flush();		if ($this->curmode === false) $this->_connectionID = odbc_connect($argDSN,$argUsername,$argPassword);		else $this->_connectionID = odbc_pconnect($argDSN,$argUsername,$argPassword,$this->curmode);				$this->_errorMsg = isset($php_errormsg) ? $php_errormsg : '';		if ($this->_connectionID && $this->autoRollback) @odbc_rollback($this->_connectionID);		if (isset($this->connectStmt)) $this->Execute($this->connectStmt);				return $this->_connectionID != false;	}		function ServerInfo()	{			if (!empty($this->host) && ADODB_PHPVER >= 0x4300) {			$dsn = strtoupper($this->host);			$first = true;			$found = false;						if (!function_exists('odbc_data_source')) return false;						while(true) {								$rez = @odbc_data_source($this->_connectionID,					$first ? SQL_FETCH_FIRST : SQL_FETCH_NEXT);				$first = false;				if (!is_array($rez)) break;				if (strtoupper($rez['server']) == $dsn) {					$found = true;					break;				}			} 			if (!$found) return ADOConnection::ServerInfo();			if (!isset($rez['version'])) $rez['version'] = '';			return $rez;		} else {			return ADOConnection::ServerInfo();		}	}		function CreateSequence($seqname='adodbseq',$start=1)	{		if (empty($this->_genSeqSQL)) return false;		$ok = $this->Execute(sprintf($this->_genSeqSQL,$seqname));		if (!$ok) return false;		$start -= 1;		return $this->Execute("insert into $seqname values($start)");	}		var $_dropSeqSQL = 'drop table %s';	function DropSequence($seqname)	{		if (empty($this->_dropSeqSQL)) return false;		return $this->Execute(sprintf($this->_dropSeqSQL,$seqname));	}		/*		This algorithm is not very efficient, but works even if table locking		is not available.				Will return false if unable to generate an ID after $MAXLOOPS attempts.	*/	function GenID($seq='adodbseq',$start=1)	{			// if you have to modify the parameter below, your database is overloaded,		// or you need to implement generation of id's yourself!		$MAXLOOPS = 100;		//$this->debug=1;		while (--$MAXLOOPS>=0) {			$num = $this->GetOne("select id from $seq");			if ($num === false) {				$this->Execute(sprintf($this->_genSeqSQL ,$seq));					$start -= 1;				$num = '0';				$ok = $this->Execute("insert into $seq values($start)");				if (!$ok) return false;			} 			$this->Execute("update $seq set id=id+1 where id=$num");						if ($this->affected_rows() > 0) {				$num += 1;				$this->genID = $num;				return $num;			}		}		if ($fn = $this->raiseErrorFn) {			$fn($this->databaseType,'GENID',-32000,"Unable to generate unique id after $MAXLOOPS attempts",$seq,$num);		}		return false;	}	function ErrorMsg()	{		if ($this->_haserrorfunctions) {			if ($this->_errorMsg !== false) return $this->_errorMsg;			if (empty($this->_connectionID)) return @odbc_errormsg();			return @odbc_errormsg($this->_connectionID);		} else return ADOConnection::ErrorMsg();	}		function ErrorNo()	{				if ($this->_haserrorfunctions) {			if ($this->_errorCode !== false) {				// bug in 4.0.6, error number can be corrupted string (should be 6 digits)				return (strlen($this->_errorCode)<=2) ? 0 : $this->_errorCode;			}			if (empty($this->_connectionID)) $e = @odbc_error(); 			else $e = @odbc_error($this->_connectionID);						 // bug in 4.0.6, error number can be corrupted string (should be 6 digits)			 // so we check and patch			if (strlen($e)<=2) return 0;			return $e;		} else return ADOConnection::ErrorNo();	}			function BeginTrans()	{			if (!$this->hasTransactions) return false;		if ($this->transOff) return true; 		$this->transCnt += 1;		$this->_autocommit = false;		return odbc_autocommit($this->_connectionID,false);	}		function CommitTrans($ok=true) 	{ 		if ($this->transOff) return true; 		if (!$ok) return $this->RollbackTrans();		if ($this->transCnt) $this->transCnt -= 1;		$this->_autocommit = true;		$ret = odbc_commit($this->_connectionID);		odbc_autocommit($this->_connectionID,true);		return $ret;	}		function RollbackTrans()	{		if ($this->transOff) return true; 		if ($this->transCnt) $this->transCnt -= 1;		$this->_autocommit = true;		$ret = odbc_rollback($this->_connectionID);		odbc_autocommit($this->_connectionID,true);		return $ret;	}		function MetaPrimaryKeys($table)	{	global $ADODB_FETCH_MODE;			if ($this->uCaseTables) $table = strtoupper($table);		$schema = '';		$this->_findschema($table,$schema);		$savem = $ADODB_FETCH_MODE;		$ADODB_FETCH_MODE = ADODB_FETCH_NUM;		$qid = @odbc_primarykeys($this->_connectionID,'',$schema,$table);				if (!$qid) {			$ADODB_FETCH_MODE = $savem;			return false;		}		$rs = new ADORecordSet_odbc($qid);		$ADODB_FETCH_MODE = $savem;				if (!$rs) return false;		$rs->_has_stupid_odbc_fetch_api_change = $this->_has_stupid_odbc_fetch_api_change;				$arr =& $rs->GetArray();		$rs->Close();		//print_r($arr);		$arr2 = array();		for ($i=0; $i < sizeof($arr); $i++) {			if ($arr[$i][3]) $arr2[] = $arr[$i][3];		}		return $arr2;	}				function &MetaTables($ttype=false)	{	global $ADODB_FETCH_MODE;			$savem = $ADODB_FETCH_MODE;		$ADODB_FETCH_MODE = ADODB_FETCH_NUM;		$qid = odbc_tables($this->_connectionID);				$rs = new ADORecordSet_odbc($qid);				$ADODB_FETCH_MODE = $savem;		if (!$rs) {			$false = false;			return $false;		}		$rs->_has_stupid_odbc_fetch_api_change = $this->_has_stupid_odbc_fetch_api_change;				$arr =& $rs->GetArray();		//print_r($arr);				$rs->Close();		$arr2 = array();				if ($ttype) {			$isview = strncmp($ttype,'V',1) === 0;		}		for ($i=0; $i < sizeof($arr); $i++) {			if (!$arr[$i][2]) continue;			$type = $arr[$i][3];			if ($ttype) { 				if ($isview) {					if (strncmp($type,'V',1) === 0) $arr2[] = $arr[$i][2];				} else if (strncmp($type,'SYS',3) !== 0) $arr2[] = $arr[$i][2];			} else if (strncmp($type,'SYS',3) !== 0) $arr2[] = $arr[$i][2];		}		return $arr2;	}	/*See http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odbc/htm/odbcdatetime_data_type_changes.asp/ SQL data type codes /#define	SQL_UNKNOWN_TYPE	0#define SQL_CHAR			1#define SQL_NUMERIC		 2#define SQL_DECIMAL		 3#define SQL_INTEGER		 4#define SQL_SMALLINT		5#define SQL_FLOAT		   6#define SQL_REAL			7#define SQL_DOUBLE		  8#if (ODBCVER >= 0x0300)#define SQL_DATETIME		9#endif#define SQL_VARCHAR		12/ One-parameter shortcuts for date/time data types /#if (ODBCVER >= 0x0300)#define SQL_TYPE_DATE	  91#define SQL_TYPE_TIME	  92#define SQL_TYPE_TIMESTAMP 93#define SQL_UNICODE                             (-95)#define SQL_UNICODE_VARCHAR                     (-96)#define SQL_UNICODE_LONGVARCHAR                 (-97)*/	function ODBCTypes($t)	{		switch ((integer)$t) {		case 1:			case 12:		case 0:		case -95:		case -96:			return 'C';		case -97:		case -1: //text			return 'X';		case -4: //image			return 'B';						case 9:			case 91:			return 'D';				case 10:		case 11:		case 92:		case 93:			return 'T';					case 4:		case 5:		case -6:			return 'I';					case -11: // uniqidentifier			return 'R';		case -7: //bit			return 'L';				default:			return 'N';

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99精品久久久久久国产越南 | 日本久久一区二区三区| 欧美一区二区三区电影| 中文字幕一区日韩精品欧美| 日本成人在线网站| 在线观看免费成人| 欧美国产一区二区| 久久99最新地址| 欧美精品国产精品| 亚洲精品日韩专区silk| 国产不卡在线视频| 精品黑人一区二区三区久久| 亚洲一区自拍偷拍| 国产91精品在线观看| 精品欧美一区二区久久| 亚洲成av人在线观看| 99re视频精品| 国产精品丝袜久久久久久app| 午夜视频一区在线观看| 在线视频欧美区| 最新日韩av在线| 成人精品视频一区二区三区| 久久美女艺术照精彩视频福利播放 | 日韩欧美不卡一区| 天天av天天翘天天综合网色鬼国产| 99在线精品观看| 国产精品久久久爽爽爽麻豆色哟哟| 国产综合久久久久久鬼色| 欧美一区二区高清| 日韩av电影天堂| 欧美人与性动xxxx| 亚洲.国产.中文慕字在线| 色狠狠一区二区| 曰韩精品一区二区| 色拍拍在线精品视频8848| 成人欧美一区二区三区黑人麻豆| 成人免费看黄yyy456| 中文字幕免费不卡在线| 粉嫩一区二区三区在线看| 国产欧美日韩综合精品一区二区| 国产美女av一区二区三区| 制服.丝袜.亚洲.中文.综合| 丝袜亚洲另类丝袜在线| 欧美一区二区视频在线观看2022| 日本在线观看不卡视频| 日韩欧美成人午夜| 国产一区二区在线视频| 国产日产欧产精品推荐色 | 亚洲va韩国va欧美va| 日本精品裸体写真集在线观看| 亚洲视频小说图片| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 99热这里都是精品| 亚洲欧美aⅴ...| 91高清视频免费看| 天天综合网天天综合色| 日韩欧美中文字幕公布| 国产一区二区三区在线观看精品 | 欧美日韩日日摸| 日韩高清不卡一区二区三区| 日韩久久免费av| 国产成人在线网站| 综合久久久久久久| 欧美日韩二区三区| 久久电影国产免费久久电影| 国产亚洲精品福利| 91美女福利视频| 亚洲va欧美va人人爽| 欧美不卡一区二区三区| 国产精品99久| 亚洲乱码国产乱码精品精98午夜| 欧美亚洲图片小说| 欧美性色黄大片| 青青草国产成人99久久| 久久蜜桃香蕉精品一区二区三区| va亚洲va日韩不卡在线观看| 亚洲一区二区在线播放相泽| 日韩一区二区精品葵司在线 | 亚洲高清免费视频| 精品欧美久久久| 色综合天天性综合| 日本aⅴ亚洲精品中文乱码| 久久久久99精品一区| 91久久精品网| 久久99国产精品成人| 国产女主播在线一区二区| 欧洲精品中文字幕| 狠狠色丁香婷婷综合久久片| 亚洲精品中文在线影院| 欧美刺激午夜性久久久久久久| 成人国产视频在线观看| 日本视频一区二区三区| 专区另类欧美日韩| 日韩欧美综合一区| 91丨porny丨蝌蚪视频| 青青青伊人色综合久久| 国产精品麻豆一区二区| 欧美一级片在线看| 99久久精品国产网站| 日韩精品一级二级| 中文字幕在线观看不卡| 日韩欧美中文字幕一区| 色婷婷久久一区二区三区麻豆| 九一久久久久久| 亚洲最大色网站| 国产视频在线观看一区二区三区| 欧美丝袜第三区| 成人小视频在线观看| 日本在线不卡视频| 亚洲天堂免费看| 欧美一区二区美女| 欧美影片第一页| 成人网在线免费视频| 日本女人一区二区三区| 亚洲精品视频在线观看免费 | 在线成人免费观看| www.亚洲在线| 极品少妇xxxx精品少妇| 亚洲黄色小说网站| 亚洲国产精品黑人久久久| 91精品国产色综合久久不卡蜜臀| 91在线精品秘密一区二区| 国产一区二区中文字幕| 男女男精品网站| 亚洲第一主播视频| 亚洲人午夜精品天堂一二香蕉| 久久噜噜亚洲综合| 一个色在线综合| 中文字幕日韩av资源站| 欧美精彩视频一区二区三区| 日韩欧美不卡在线观看视频| 欧美伦理视频网站| 欧美专区亚洲专区| 99re亚洲国产精品| jlzzjlzz亚洲日本少妇| 国产伦精品一区二区三区在线观看 | 欧美一区二区三区婷婷月色| 在线一区二区三区做爰视频网站| 成人免费看片app下载| 国产精品自在欧美一区| 精品在线播放免费| 麻豆传媒一区二区三区| 秋霞电影一区二区| 天堂一区二区在线| 亚洲愉拍自拍另类高清精品| 亚洲视频一区二区在线| 综合欧美亚洲日本| 国产精品久久久久久久久免费桃花 | 日韩欧美一级二级三级| 欧美日本一区二区三区四区 | 99精品一区二区三区| 国产成人精品一区二区三区四区| 国内精品伊人久久久久av一坑| 毛片不卡一区二区| 美女诱惑一区二区| 美女网站在线免费欧美精品| 日本免费新一区视频| 久久国产精品色婷婷| 国产一区二区三区视频在线播放| 在线视频国内一区二区| 欧美在线高清视频| 欧美日韩在线精品一区二区三区激情 | 国产一区福利在线| 国内外精品视频| 丰满亚洲少妇av| 91在线视频播放| 91福利精品视频| 欧美日韩国产另类一区| 欧美一区二区三区精品| 精品免费国产一区二区三区四区| 精品久久国产老人久久综合| 久久综合九色综合久久久精品综合| 26uuu欧美| 国产农村妇女毛片精品久久麻豆| 中文字幕av一区 二区| 中文字幕一区二区三区四区不卡 | 久久影院电视剧免费观看| 国产日韩欧美在线一区| 国产精品成人一区二区三区夜夜夜 | 日韩视频免费观看高清完整版在线观看| 91精品国产综合久久久久| 精品福利一二区| 亚洲国产精品二十页| 亚洲免费伊人电影| 亚洲成人福利片| 国内精品视频一区二区三区八戒| 国产成人aaa| 色国产精品一区在线观看| 欧美日韩在线观看一区二区| 欧美电影免费提供在线观看| 国产色产综合色产在线视频| 亚洲美女淫视频| 日韩av在线播放中文字幕| 国产v日产∨综合v精品视频| 色综合视频一区二区三区高清| 欧美精品日韩精品| 久久久777精品电影网影网| 亚洲欧美日韩在线播放| 日韩av高清在线观看| 成人在线综合网|