3fe41feac23c93715fb4b1cdb1a692e630a13ee2
[Packages/TYPO3.CMS.git] / typo3 / sysext / adodb / adodb / tests / test-php5.php
1 <?php
2 /*
3 V4.81 3 May 2006 (c) 2000-2006 John Lim (jlim#natsoft.com.my). All rights reserved.
4 Released under both BSD license and Lesser GPL library license.
5 Whenever there is any discrepancy between the two licenses,
6 the BSD license will take precedence.
7 Set tabs to 8.
8 */
9
10
11 error_reporting(E_ALL);
12
13 $path = dirname(__FILE__);
14
15 include("$path/../adodb-exceptions.inc.php");
16 include("$path/../adodb.inc.php");
17
18 echo "<h3>PHP ".PHP_VERSION."</h3>\n";
19 try {
20
21 $dbt = 'mysql';
22
23 try {
24 switch($dbt) {
25 case 'oci8po':
26 $db = NewADOConnection("oci8po");
27
28 $db->Connect('','scott','natsoft');
29 break;
30 default:
31 case 'mysql':
32 $db = NewADOConnection("mysql");
33 $db->Connect('localhost','root','','northwind');
34 break;
35
36 case 'mysqli':
37 $db = NewADOConnection("mysqli://root:@localhost/northwind");
38 //$db->Connect('localhost','root','','test');
39 break;
40 }
41 } catch (exception $e){
42 echo "Connect Failed";
43 adodb_pr($e);
44 die();
45 }
46
47 $db->debug=1;
48
49 $cnt = $db->GetOne("select count(*) from adoxyz where ?<id and id<?",array(10,20));
50 $stmt = $db->Prepare("select * from adoxyz where ?<id and id<?");
51 if (!$stmt) echo $db->ErrorMsg(),"\n";
52 $rs = $db->Execute($stmt,array(10,20));
53
54 echo "<hr /> Foreach Iterator Test (rand=".rand().")<hr />";
55 $i = 0;
56 foreach($rs as $v) {
57 $i += 1;
58 echo "rec $i: "; $s1 = adodb_pr($v,true); $s2 = adodb_pr($rs->fields,true);
59 if ($s1 != $s2 && !empty($v)) {adodb_pr($s1); adodb_pr($s2);}
60 else echo "passed<br>";
61 flush();
62 }
63
64
65 if ($i != $cnt) die("actual cnt is $i, cnt should be $cnt\n");
66 else echo "Count $i is correct<br>";
67
68 $rs = $db->Execute("select bad from badder");
69
70 } catch (exception $e) {
71 adodb_pr($e);
72 echo "<h3>adodb_backtrace:</h3>\n";
73 $e = adodb_backtrace($e->gettrace());
74 }
75
76 $rs = $db->Execute("select distinct id, firstname,lastname from adoxyz order by id");
77 echo "Result=\n",$rs,"</p>";
78
79 echo "<h3>Active Record</h3>";
80 try {
81 include_once("../adodb-active-record.inc.php");
82 class City extends ADOdb_Active_Record{};
83 $a = new City();
84
85 } catch(exception $e){
86 echo $e->getMessage();
87 }
88
89 try {
90
91 ADOdb_Active_Record::SetDatabaseAdapter($db);
92 $a = new City();
93
94 echo "<p>Successfully created City()<br>";
95 var_dump($a->GetPrimaryKeys());
96 $a->city = 'Kuala Lumpur';
97 $a->Save();
98 $a->Update();
99 $a->SetPrimaryKeys(array('city'));
100 $a->country = "M'sia";
101 $a->save();
102 $a->Delete();
103 } catch(exception $e){
104 echo $e->getMessage();
105 }
106
107 include_once("test-active-record.php");
108 ?>