⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test.php

📁 Typo3, 开源里边最强大的
💻 PHP
📖 第 1 页 / 共 4 页
字号:
		$rs->MoveNext();		if ($rs->fields[$id] != 2)  {Err("Error 3"); print_r($rs->fields);};		$rs->MoveNext();		if (!$rs->EOF) Err("Error EOF");		else if (is_array($rs->fields) || $rs->fields) {			Err("Error: ## fields should be set to false on EOF");			print_r($rs->fields);		}	}		$ADODB_FETCH_MODE = ADODB_FETCH_NUM;	print "<p>FETCH_MODE = NUM: Should get 1, Caroline</p>";	$rs = &$db->SelectLimit('select id,firstname from ADOXYZ order by id',1);	if ($rs && !$rs->EOF) {		if (isset($rs->fields['id'])) Err("FETCH_NUM has ASSOC fields");		if ($rs->fields[0] != 1)  {Err("Error 1"); print_r($rs->fields);};		if (trim($rs->fields[1]) != 'Caroline')  {Err("Error 2");print_r($rs->fields);};		$rs->MoveNext();		if (!$rs->EOF) Err("Error EOF");	}	$ADODB_FETCH_MODE = $savefetch;		$db->debug = false;	print "<p>GetRowAssoc Upper: Should get 1, Caroline</p>";	$rs = &$db->SelectLimit('select id,firstname from ADOXYZ order by id',1);	if ($rs && !$rs->EOF) {		$arr = &$rs->GetRowAssoc();		if ($arr['ID'] != 1) {Err("Error 1");print_r($arr);};		if (trim($arr['FIRSTNAME']) != 'Caroline') {Err("Error 2"); print_r($arr);};		$rs->MoveNext();		if (!$rs->EOF) Err("Error EOF");	}	print "<p>GetRowAssoc Lower: Should get 1, Caroline</p>";	$rs = &$db->SelectLimit('select id,firstname from ADOXYZ order by id',1);	if ($rs && !$rs->EOF) {		$arr = &$rs->GetRowAssoc(false);		if ($arr['id'] != 1) {Err("Error 1"); print_r($arr);};		if (trim($arr['firstname']) != 'Caroline') {Err("Error 2"); print_r($arr);};	}		print "<p>GetCol Test</p>";	$col = $db->GetCol('select distinct firstname from adoxyz order by 1');	if (!is_array($col)) Err("Col size is wrong");	if (trim($col[0]) != 'Alan' or trim($col[9]) != 'Yat Sun') Err("Col elements wrong");	$db->debug = true;				echo "<p>Date Update Test</p>";	$zdate = date('Y-m-d',time()+3600*24);	$zdate = $db->DBDate($zdate);	$db->Execute("update ADOXYZ set created=$zdate where id=1");	$row = $db->GetRow("select created,firstname from ADOXYZ where id=1");	print_r($row); echo "<br>";				print "<p>SelectLimit Distinct Test 1: Should see Caroline, John and Mary</p>";	$rs = &$db->SelectLimit('select distinct * from ADOXYZ order by id',3);			if ($rs && !$rs->EOF) {		if (trim($rs->fields[1]) != 'Caroline') Err("Error 1 (exp Caroline), ".$rs->fields[1]);		$rs->MoveNext();				if (trim($rs->fields[1]) != 'John') Err("Error 2 (exp John), ".$rs->fields[1]);		$rs->MoveNext();		if (trim($rs->fields[1]) != 'Mary') Err("Error 3 (exp Mary),".$rs->fields[1]);		$rs->MoveNext();		if (! $rs->EOF) Err("Error EOF");		//rs2html($rs);	} else Err("Failed SelectLimit Test 1");		print "<p>SelectLimit Test 2: Should see Mary, George and Mr. Alan</p>";	$rs = &$db->SelectLimit('select * from ADOXYZ order by id',3,2);	if ($rs && !$rs->EOF) {		if (trim($rs->fields[1]) != 'Mary') Err("Error 1 - No Mary, instead: ".$rs->fields[1]);		$rs->MoveNext();		if (trim($rs->fields[1]) != 'George')Err("Error 2 - No George, instead: ".$rs->fields[1]);		$rs->MoveNext();		if (trim($rs->fields[1]) != 'Mr. Alan') Err("Error 3 - No Mr. Alan, instead: ".$rs->fields[1]);		$rs->MoveNext();		if (! $rs->EOF) Err("Error EOF");	//	rs2html($rs);	}	 else Err("Failed SelectLimit Test 2 ". ($rs ? 'EOF':'no RS'));		print "<p>SelectLimit Test 3: Should see Wai Hun and Steven</p>";	$db->debug=1;	global $A; $A=1;	$rs = &$db->SelectLimit('select * from ADOXYZ order by id',-1,48);	$A=0;	if ($rs && !$rs->EOF) {		if (empty($rs->connection)) print "<b>Connection object missing from recordset</b></br>";		if (trim($rs->fields[1]) != 'Wai Hun') Err("Error 1 ".$rs->fields[1]);		$rs->MoveNext();		if (trim($rs->fields[1]) != 'Steven') Err("Error 2 ".$rs->fields[1]);		$rs->MoveNext();		if (! $rs->EOF) {			Err("Error EOF");		}		//rs2html($rs);	}	 else Err("Failed SelectLimit Test 3");		$db->debug = false;			$rs = &$db->Execute("select * from ADOXYZ order by id");	print "<p>Testing Move()</p>";		if (!$rs)Err( "Failed Move SELECT");	else {		if (!$rs->Move(2)) {			if (!$rs->canSeek) print "<p>$db->databaseType: <b>Move(), MoveFirst() nor MoveLast() not supported.</b></p>";			else print '<p><b>RecordSet->canSeek property should be set to false</b></p>';		} else {			$rs->MoveFirst();			if (trim($rs->Fields("firstname")) != 'Caroline') {				print "<p><b>$db->databaseType: MoveFirst failed -- probably cannot scroll backwards</b></p>";			}			else print "MoveFirst() OK<BR>";												// Move(3) tests error handling -- MoveFirst should not move cursor			$rs->Move(3);			if (trim($rs->Fields("firstname")) != 'George') {				print '<p>'.$rs->Fields("id")."<b>$db->databaseType: Move(3) failed</b></p>";			} else print "Move(3) OK<BR>";									$rs->Move(7);			if (trim($rs->Fields("firstname")) != 'Yat Sun') {				print '<p>'.$rs->Fields("id")."<b>$db->databaseType: Move(7) failed</b></p>";				print_r($rs);			} else print "Move(7) OK<BR>";			if ($rs->EOF) Err("Move(7) is EOF already");			$rs->MoveLast();			if (trim($rs->Fields("firstname")) != 'Steven'){				 print '<p>'.$rs->Fields("id")."<b>$db->databaseType: MoveLast() failed</b></p>";				 print_r($rs);			}else print "MoveLast() OK<BR>";			$rs->MoveNext();			if (!$rs->EOF) err("Bad MoveNext");			if ($rs->canSeek) {				$rs->Move(3);				if (trim($rs->Fields("firstname")) != 'George') {					print '<p>'.$rs->Fields("id")."<b>$db->databaseType: Move(3) after MoveLast failed</b></p>";									} else print "Move(3) after MoveLast() OK<BR>";			}						print "<p>Empty Move Test";			$rs = $db->Execute("select * from ADOXYZ where id > 0 and id < 0");			$rs->MoveFirst();			if (!$rs->EOF || $rs->fields) Err("Error in empty move first");		}	}		$rs = $db->Execute('select * from ADOXYZ where id = 2');	if ($rs->EOF || !is_array($rs->fields)) Err("Error in select");	$rs->MoveNext();	if (!$rs->EOF) Err("Error in EOF (xx) "); //	$db->debug=true;	print "<p>Testing ADODB_FETCH_ASSOC and concat: concat firstname and lastname</p>";	$save = $ADODB_FETCH_MODE;	$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC;	if ($db->dataProvider == 'postgres') {		$sql = "select ".$db->Concat('cast(firstname as varchar)',$db->qstr(' '),'lastname')." as fullname,id,".$db->sysTimeStamp." as d from ADOXYZ";		$rs = &$db->Execute($sql);	} else {		$sql = "select distinct ".$db->Concat('firstname',$db->qstr(' '),'lastname')." as fullname,id,".$db->sysTimeStamp." as d from ADOXYZ";		$rs = &$db->Execute($sql);	}	if ($rs) {		if (empty($_GET['hide'])) rs2html($rs);	} else {		Err( "Failed Concat:".$sql);	}	$ADODB_FETCH_MODE = $save;	print "<hr />Testing GetArray() ";	//$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC;		$rs = &$db->Execute("select * from ADOXYZ order by id");	if ($rs) {		$arr = &$rs->GetArray(10);		if (sizeof($arr) != 10 || trim($arr[1][1]) != 'John' || trim($arr[1][2]) != 'Lim') print $arr[1][1].' '.$arr[1][2]."<b> &nbsp; ERROR</b><br>";		else print " OK<BR>";	}		$arr = $db->GetArray("select x from ADOXYZ");	$e = $db->ErrorMsg(); $e2 = $db->ErrorNo();	echo "Testing error handling, should see illegal column 'x' error=<i>$e ($e2) </i><br>";	if (!$e || !$e2) Err("Error handling did not work");	print "Testing FetchNextObject for 1 object ";	$rs = &$db->Execute("select distinct lastname,firstname from ADOXYZ where firstname='Caroline'");	$fcnt = 0;	if ($rs)	while ($o = $rs->FetchNextObject()) {		$fcnt += 1;		}	if ($fcnt == 1) print " OK<BR>";	else print "<b>FAILED</b><BR>";		$stmt = $db->Prepare("select * from ADOXYZ where id < 3");	$rs = $db->Execute($stmt);	if (!$rs) Err("Prepare failed");	else {		$arr = $rs->GetArray();		if (!$arr) Err("Prepare failed 2");		if (sizeof($arr) != 2) Err("Prepare failed 3");	}	print "Testing GetAssoc() ";	$savecrecs = $ADODB_COUNTRECS;	$ADODB_COUNTRECS = false;	//$arr = $db->GetArray("select  lastname,firstname from ADOXYZ");	//print_r($arr);	print "<hr />";	$rs =& $db->Execute("select distinct lastname,firstname,created from ADOXYZ");		if ($rs) {		$arr = $rs->GetAssoc();		//print_r($arr);		if (empty($arr['See']) || trim(reset($arr['See'])) != 'Wai Hun') print $arr['See']." &nbsp; <b>ERROR</b><br>";		else print " OK 1";	}		$arr = &$db->GetAssoc("select distinct lastname,firstname from ADOXYZ");	if ($arr) {		//print_r($arr);		if (empty($arr['See']) || trim($arr['See']) != 'Wai Hun') print $arr['See']." &nbsp; <b>ERROR</b><br>";		else print " OK 2<BR>";	}	// Comment this out to test countrecs = false	$ADODB_COUNTRECS = $savecrecs;	$db->debug=1;	$query = $db->Prepare("select count(*) from ADOXYZ");	$rs = $db->CacheExecute(10,$query);	if (reset($rs->fields) != 50) echo Err("$cnt wrong for Prepare/CacheGetOne");		for ($loop=0; $loop < 1; $loop++) {	print "Testing GetMenu() and CacheExecute<BR>";	$db->debug = true;	$rs = &$db->CacheExecute(4,"select distinct firstname,lastname from ADOXYZ");			if ($rs) print 'With blanks, Steven selected:'. $rs->GetMenu('menu','Steven').'<BR>'; 	else print " Fail<BR>";	$rs = &$db->CacheExecute(4,"select distinct firstname,lastname from ADOXYZ");		if ($rs) print ' No blanks, Steven selected: '. $rs->GetMenu('menu','Steven',false).'<BR>';	else print " Fail<BR>";		$rs = &$db->CacheExecute(4,"select distinct firstname,lastname from ADOXYZ");		if ($rs) print ' 1st line set to **** , Steven selected: '. $rs->GetMenu('menu','Steven','1st:****').'<BR>';	else print " Fail<BR>";			$rs = &$db->CacheExecute(4,"select distinct firstname,lastname from ADOXYZ");	if ($rs) print ' Multiple, Alan selected: '. $rs->GetMenu('menu','Alan',false,true).'<BR>';	else print " Fail<BR>";	print '</p><hr />';		$rs = &$db->CacheExecute(4,"select distinct firstname,lastname from ADOXYZ");	if ($rs) {		print ' Multiple, Alan and George selected: '. $rs->GetMenu('menu',array('Alan','George'),false,true);		if (empty($rs->connection)) print "<b>Connection object missing from recordset</b></br>";	} else print " Fail<BR>";	print '</p><hr />';		print "Testing GetMenu3()<br>";	$rs = $db->Execute("select ".$db->Concat('firstname',"'-'",'id').",id, lastname from ADOXYZ order by lastname,id");	if ($rs) print "Grouped Menu: ".$rs->GetMenu3('name');	else Err('Grouped Menu GetMenu3()');	print "<hr />";	print "Testing GetMenu2() <BR>";	$rs = &$db->CacheExecute(4,"select distinct firstname,lastname from ADOXYZ");	if ($rs) print 'With blanks, Steven selected:'. $rs->GetMenu2('menu',('Oey')).'<BR>'; 	else print " Fail<BR>";	$rs = &$db->CacheExecute(6,"select distinct firstname,lastname from ADOXYZ");	if ($rs) print ' No blanks, Steven selected: '. $rs->GetMenu2('menu',('Oey'),false).'<BR>';	else print " Fail<BR>";	}	echo "<h3>CacheEXecute</h3>";	$ADODB_FETCH_MODE = ADODB_FETCH_NUM;	$rs = &$db->CacheExecute(6,"select distinct firstname,lastname from ADOXYZ");	print_r($rs->fields); echo $rs->fetchMode;echo "<br>";	echo $rs->Fields('firstname');		$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC;	$rs = &$db->CacheExecute(6,"select distinct firstname,lastname from ADOXYZ");	print_r($rs->fields);echo "<br>";	echo $rs->Fields('firstname');	$db->debug = false;		$ADODB_FETCH_MODE = ADODB_FETCH_NUM;	// phplens		$sql = 'select * from ADOXYZ where 0=1';	echo "<p>**Testing '$sql' (phplens compat 1)</p>";	$rs = &$db->Execute($sql);	if (!$rs) err( "<b>No recordset returned for '$sql'</b>");	if (!$rs->FieldCount()) err( "<b>No fields returned for $sql</b>");	if (!$rs->FetchField(1)) err( "<b>FetchField failed for $sql</b>");		$sql = 'select * from ADOXYZ order by 1';	echo "<p>**Testing '$sql' (phplens compat 2)</p>";	$rs = &$db->Execute($sql);	if (!$rs) err( "<b>No recordset returned for '$sql'<br>".$db->ErrorMsg()."</b>");			$sql = 'select * from ADOXYZ order by 1,1';	echo "<p>**Testing '$sql' (phplens compat 3)</p>";	$rs = &$db->Execute($sql);	if (!$rs) err( "<b>No recordset returned for '$sql'<br>".$db->ErrorMsg()."</b>");			// Move	$rs1 = &$db->Execute("select id from ADOXYZ where id <= 2 order by 1");	$rs2 = &$db->Execute("select id from ADOXYZ where id = 3 or id = 4 order by 1");	if ($rs1) $rs1->MoveLast();	if ($rs2) $rs2->MoveLast();		if (empty($rs1) || empty($rs2) || $rs1->fields[0] != 2 || $rs2->fields[0] != 4) {		$a = $rs1->fields[0];		$b = $rs2->fields[0];		print "<p><b>Error in multiple recordset test rs1=$a rs2=$b (should be rs1=2 rs2=4)</b></p>";	} else		print "<p>Testing multiple recordsets OK</p>";				echo "<p> GenID test: ";	for ($i=1; $i <= 10; $i++) 		echo  "($i: ",$val = $db->GenID($db->databaseType.'abcseq6' ,5), ") ";	if ($val == 0) Err("GenID not supported");		if ($val) {		$db->DropSequence('abc_seq2');		$db->CreateSequence('abc_seq2');		$val = $db->GenID('abc_seq2');		$db->DropSequence('abc_seq2');		$db->CreateSequence('abc_seq2');		$val = $db->GenID('abc_seq2');		if ($val != 1) Err("Drop and Create Sequence not supported ($val)");	}	echo "<p>";		if (substr($db->dataProvider,0,3) != 'notused') { // used to crash ado		$sql = "select firstnames from adoxyz";		print "<p>Testing execution of illegal statement: <i>$sql</i></p>";		if ($db->Execute($sql) === false) {			print "<p>This returns the following ErrorMsg(): <i>".$db->ErrorMsg()."</i> and ErrorNo(): ".$db->ErrorNo().'</p>';		} else 			print "<p><b>Error in error handling -- Execute() should return false</b></p>";	} else 		print "<p><b>ADO skipped error handling of bad select statement</b></p>";		print "<p>ASSOC TEST 2<br>";	$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC;	$rs = $db->query('select * from adoxyz order by id');	if ($ee = $db->ErrorMsg()) {		Err("Error message=$ee");	}	if ($ee = $db->ErrorNo()) {		Err("Error No = $ee");	}	print_r($rs->fields);	for($i=0;$i<$rs->FieldCount();$i++) 	{ 		$fld=$rs->FetchField($i); 		print "<br> Field name is ".$fld->name; 		print " ".$rs->Fields($fld->name); 	} 			print "<p>BOTH TEST 2<br>";	if ($db->dataProvider == 'ado') {		print "<b>ADODB_FETCH_BOTH not supported</b> for dataProvider=".$db->dataProvider."<br>";	} else {		$ADODB_FETCH_MODE = ADODB_FETCH_BOTH;		$rs = $db->query('select * from adoxyz order by id');		for($i=0;$i<$rs->FieldCount();$i++) 		{ 			$fld=$rs->FetchField($i); 			print "<br> Field name is ".$fld->name; 			print " ".$rs->Fields($fld->name); 		} 	}		print "<p>NUM TEST 2<br>";	$ADODB_FETCH_MODE = ADODB_FETCH_NUM;	$rs = $db->query('select * from adoxyz order by id');	for($i=0;$i<$rs->FieldCount();$i++) 	{ 		$fld=$rs->FetchField($i); 		print "<br> Field name is ".$fld->name; 		print " ".$rs->Fields($fld->name); 	} 		print "<p>ASSOC Test of SelectLimit<br>";	$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC;	$rs = $db->selectlimit('select * from adoxyz order by id',3,4);	$cnt = 0;	while ($rs && !$rs->EOF) {		$cnt += 1;		if (!isset($rs->fields['firstname'])) {			print "<br><b>ASSOC returned numeric field</b></p>";			break;		}		$rs->MoveNext();	}	if ($cnt != 3) print "<br><b>Count should be 3, instead it was $cnt</b></p>";			$ADODB_FETCH_MODE = ADODB_FETCH_NUM;	if ($db->sysDate) {		$saved = $db->debug;		$db->debug = 1;		$rs = $db->Execute("select {$db->sysDate} from adoxyz where id=1");		if (ADORecordSet::UnixDate(date('Y-m-d')) != $rs->UnixDate($rs->fields[0])) {			print "<p><b>Invalid date {$rs->fields[0]}</b></p>";		} else			print "<p>Passed \$sysDate test ({$rs->fields[0]})</p>";				print_r($rs->FetchField(0));		print time();		$db->debug=$saved;	} else {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -