Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
--TEST--
2
DB_driver::affectedRows
3
--INI--
4
error_reporting = 2047
5
--SKIPIF--
6
<?php
7
require_once dirname(__FILE__) . '/skipif.inc';
8
 
9
// ibase_query on PHP 4 doesn't support affected rows.
10
if ($dbh->phptype == 'ibase' && version_compare(PHP_VERSION, '5.0.0', '<')) {
11
	die('skip ibase doesn\'t return affected rows from ibase_query in PHP 4');
12
}
13
?>
14
--FILE--
15
<?php
16
require_once dirname(__FILE__) . '/mktable.inc';
17
 
18
/**
19
 * Local error callback handler.
20
 *
21
 * Drops the phptest table, prints out an error message and kills the
22
 * process.
23
 *
24
 * @param object  $o  PEAR error object automatically passed to this method
25
 * @return void
26
 * @see PEAR::setErrorHandling()
27
 */
28
function pe($o) {
29
    global $dbh;
30
 
31
    $dbh->setErrorHandling(PEAR_ERROR_RETURN);
32
    drop_table($dbh, 'phptest');
33
 
34
    die($o->toString());
35
}
36
 
37
$dbh->setErrorHandling(PEAR_ERROR_CALLBACK, 'pe');
38
 
39
 
40
// Clean table
41
$dbh->query("DELETE FROM phptest");
42
 
43
// Affected rows by INSERT statement
44
$dbh->query("INSERT INTO phptest (a,b) VALUES(1, 'test')");
45
$dbh->query("INSERT INTO phptest (a,b) VALUES(2, 'test')");
46
printf("%d after insert\n", $dbh->affectedRows());
47
 
48
// Affected rows by SELECT statement
49
$dbh->query("SELECT * FROM phptest");
50
printf("%d after select\n", $dbh->affectedRows());
51
$dbh->query("DELETE FROM phptest WHERE b = 'test'");
52
printf("%d after delete\n", $dbh->affectedRows());
53
 
54
// Affected rows by DELETE statement
55
$dbh->query("INSERT INTO phptest (a,b) VALUES(1, 'test')");
56
$dbh->query("INSERT INTO phptest (a,b) VALUES(2, 'test')");
57
$dbh->query("DELETE FROM phptest");
58
printf("%d after delete all\n", $dbh->affectedRows());
59
 
60
 
61
$dbh->setErrorHandling(PEAR_ERROR_RETURN);
62
drop_table($dbh, 'phptest');
63
 
64
?>
65
--EXPECT--
66
1 after insert
67
 
68
2 after delete
69
2 after delete all