georg           Fri Jul 23 08:47:36 2004 EDT

  Added files:                 
    /php-src/ext/mysqli/tests   bug29311.phpt 

  Modified files:              
    /php-src    NEWS 
    /php-src/ext/mysqli mysqli.c mysqli_fe.c 
  Log:
  fixed bug #29311
  added support for Cursors (MySQL 5.0.x)
  
  
http://cvs.php.net/diff.php/php-src/NEWS?r1=1.1771&r2=1.1772&ty=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.1771 php-src/NEWS:1.1772
--- php-src/NEWS:1.1771 Thu Jul 22 08:15:12 2004
+++ php-src/NEWS        Fri Jul 23 08:47:36 2004
@@ -1,10 +1,11 @@
 PHP                                                                        NEWS
 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 ?? ??? 2004, PHP 5.1.0
-- Fixed bug #28985 (__getTypes() returning nothing on complex WSDL). (Dmitry)
+- Fixed bug #29311 (calling parent constructor in mysqli). (Georg)
 - Fixed bug #29236 (memory error when wsdl-cache is enabled). (Dmitry)
 - Fixed bug #29109 (SoapFault exception: [WSDL] Out of memory). (Dmitry)
 - Fixed bug #29061 (soap extension segfaults). (Dmitry)
+- Fixed bug #28985 (__getTypes() returning nothing on complex WSDL). (Dmitry)
 - Added new functions :
   . array_diff_key() (Andrey)
   . array_diff_ukey() (Andrey)
@@ -13,6 +14,7 @@
   . stream_context_get_default()  (Wez)
   . stream_socket_enable_crypto()  (Wez)
 - PHP will now respect extension dependencies when initializing.  (Wez)
+- Added Cursor support for MySQL 5.0.x in mysqli (Georg)
 - Added MDTM support to ftp_url_stat. (Sara)
 - Added zlib stream filter suport. (Sara)
 - Added bz2 stream filter support. (Sara)
http://cvs.php.net/diff.php/php-src/ext/mysqli/mysqli.c?r1=1.43&r2=1.44&ty=u
Index: php-src/ext/mysqli/mysqli.c
diff -u php-src/ext/mysqli/mysqli.c:1.43 php-src/ext/mysqli/mysqli.c:1.44
--- php-src/ext/mysqli/mysqli.c:1.43    Wed Jul  7 04:02:27 2004
+++ php-src/ext/mysqli/mysqli.c Fri Jul 23 08:47:36 2004
@@ -15,7 +15,7 @@
   | Author: Georg Richter <[EMAIL PROTECTED]>                                |
   +----------------------------------------------------------------------+
 
-  $Id: mysqli.c,v 1.43 2004/07/07 08:02:27 georg Exp $ 
+  $Id: mysqli.c,v 1.44 2004/07/23 12:47:36 georg Exp $ 
 */
 
 #ifdef HAVE_CONFIG_H
@@ -273,7 +273,7 @@
 {
        mysqli_object *obj = (mysqli_object *)zend_objects_get_address(object 
TSRMLS_CC);
 
-       if (obj->zo.ce != mysqli_link_class_entry && obj->zo.ce->constructor) {
+       if (obj->zo.ce != mysqli_link_class_entry) {
                return obj->zo.ce->constructor;
        } else {
                static zend_internal_function f;
@@ -443,6 +443,14 @@
        
        /* for mysqli_stmt_set_attr */
        REGISTER_LONG_CONSTANT("MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH", 
STMT_ATTR_UPDATE_MAX_LENGTH, CONST_CS | CONST_PERSISTENT);
+
+#ifdef STMT_ATTR_CURSOR_TYPE
+       REGISTER_LONG_CONSTANT("MYSQLI_STMT_ATTR_CURSOR_TYPE", STMT_ATTR_CURSOR_TYPE, 
CONST_CS | CONST_PERSISTENT);
+       REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_NO_CURSOR", CURSOR_TYPE_NO_CURSOR, 
CONST_CS | CONST_PERSISTENT);
+       REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_READ_ONLY", CURSOR_TYPE_READ_ONLY, 
CONST_CS | CONST_PERSISTENT);
+       REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_FOR_UPDATE", 
CURSOR_TYPE_FOR_UPDATE, CONST_CS | CONST_PERSISTENT);
+       REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_SCROLLABLE", 
CURSOR_TYPE_SCROLLABLE, CONST_CS | CONST_PERSISTENT);
+#endif
        
        /* column information */
        REGISTER_LONG_CONSTANT("MYSQLI_NOT_NULL_FLAG", NOT_NULL_FLAG, CONST_CS | 
CONST_PERSISTENT);
http://cvs.php.net/diff.php/php-src/ext/mysqli/mysqli_fe.c?r1=1.40&r2=1.41&ty=u
Index: php-src/ext/mysqli/mysqli_fe.c
diff -u php-src/ext/mysqli/mysqli_fe.c:1.40 php-src/ext/mysqli/mysqli_fe.c:1.41
--- php-src/ext/mysqli/mysqli_fe.c:1.40 Wed Jul  7 04:02:27 2004
+++ php-src/ext/mysqli/mysqli_fe.c      Fri Jul 23 08:47:36 2004
@@ -15,7 +15,7 @@
   | Author: Georg Richter <[EMAIL PROTECTED]>                                |
   +----------------------------------------------------------------------+
 
-  $Id: mysqli_fe.c,v 1.40 2004/07/07 08:02:27 georg Exp $ 
+  $Id: mysqli_fe.c,v 1.41 2004/07/23 12:47:36 georg Exp $ 
 */
 
 #ifdef HAVE_CONFIG_H
@@ -202,6 +202,7 @@
        PHP_FALIAS(set_local_infile_handler,mysqli_set_local_infile_handler,NULL)
        PHP_FALIAS(master_query,mysqli_master_query,NULL)
        PHP_FALIAS(multi_query,mysqli_multi_query,NULL)
+       PHP_FALIAS(mysqli,mysqli_connect,NULL)
        PHP_FALIAS(more_results,mysqli_more_results, NULL)
        PHP_FALIAS(next_result, mysqli_next_result, NULL)
        PHP_FALIAS(options,mysqli_options,NULL)

http://cvs.php.net/co.php/php-src/ext/mysqli/tests/bug29311.phpt?r=1.1&p=1
Index: php-src/ext/mysqli/tests/bug29311.phpt
+++ php-src/ext/mysqli/tests/bug29311.phpt
--TEST--
constructor test
--FILE--
<?php
        include "connect.inc";
        
        /* class 1 calls parent constructor */
        class mysql1 extends mysqli {
                function __construct() {
                        parent::__construct("localhost", "root", "", "test");
                }
        }

        /* class 2 has an own constructor */
        class mysql2 extends mysqli {
                
                function __construct() {
                        $this->connect("localhost", "root", "", "test");
                }
        }

        /* class 3 has no constructor */
        class mysql3 extends mysqli {
                
        }

        $foo[0] = new mysql1(); 
        $foo[1] = new mysql2(); 
        $foo[2] = new mysql3("localhost", "root", "", "test");


        for ($i=0; $i < 3; $i++) {
                if (($result = $foo[$i]->query("SELECT DATABASE()"))) {
                        $row = $result->fetch_row();
                        printf("%d: %s\n", $i, $row[0]);
                        $result->close();
                }
                $foo[$i]->close();
        }
?>
--EXPECTF--
0: test
1: test
2: test

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to