]> granicus.if.org Git - php/commitdiff
Sync from 5_3. Cutting off a few edges:
authorUlf Wendel <uw@php.net>
Fri, 28 Dec 2007 14:51:26 +0000 (14:51 +0000)
committerUlf Wendel <uw@php.net>
Fri, 28 Dec 2007 14:51:26 +0000 (14:51 +0000)
 - use connection parameter from environment variables
 - check if MySQL supports procedures
 - whitespace

ext/mysqli/tests/bug42548.phpt

index a7d5f39ff7fa73ce5c753505fc336273f5015c76..64c2ba31ec5a0d30e8ed9f041f3a5f2156147c03 100644 (file)
@@ -1,43 +1,56 @@
 --TEST--
 Bug #42548 PROCEDURE xxx can't return a result set in the given context (works in 5.2.3!!)
 --SKIPIF--
-<?php if (!extension_loaded("mysqli")) print "skip"; ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+require_once('connect.inc');
+if (!$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket)) {
+       die(sprintf('skip Cannot connect to MySQL, [%d] %s.', mysqli_connect_errno(), mysqli_connect_error()));
+}
+if (mysqli_get_server_version($link) <= 50000) {
+       die(sprintf('skip Needs MySQL 5.0+, found version %d.', mysqli_get_server_version($link)));
+}
+?>
 --FILE--
 <?php
+require_once('connect.inc');
+
 $mysqli = mysqli_init();
-$mysqli->real_connect('localhost', 'root', '', 'test');
+$mysqli->real_connect($host, $user, $passwd, $db, $port, $socket);
 if (mysqli_connect_errno()) {
-  printf("Connect failed: %s\n", mysqli_connect_error());
-  exit();
+       printf("Connect failed: %s\n", mysqli_connect_error());
+       exit();
 }
 
 $mysqli->query("DROP PROCEDURE IF EXISTS p1") or die($mysqli->error);
 $mysqli->query("CREATE PROCEDURE p1() BEGIN SELECT 23; SELECT 42; END") or die($mysqli->error);
 
 if ($mysqli->multi_query("CALL p1();"))
-{      
-  do   
-  {    
-    if ($objResult = $mysqli->store_result()) {
-      while ($row = $objResult->fetch_assoc()) {
-        print_r($row);
-      }
-      $objResult->close();
-      if ($mysqli->more_results()) {
-        print "----- next result -----------\n";
-      }
-    } else {
-      print "no results found";
-    }
-  } while ($mysqli->more_results() && $mysqli->next_result());
+{
+       do
+       {
+               if ($objResult = $mysqli->store_result()) {
+                       while ($row = $objResult->fetch_assoc()) {
+                               print_r($row);
+                       }
+                       $objResult->close();
+                       if ($mysqli->more_results()) {
+                               print "----- next result -----------\n";
+                       }
+               } else {
+                       print "no results found\n";
+               }
+       } while ($mysqli->more_results() && $mysqli->next_result());
 } else {
-  print $mysqli->error;
+       print $mysqli->error;
 }
 
 $mysqli->query("DROP PROCEDURE p1") or die($mysqli->error);
 $mysqli->close();
+print "done!";
 ?>
---EXPECT--     
+--EXPECT--
 Array
 (
     [23] => 23
@@ -49,3 +62,4 @@ Array
 )
 ----- next result -----------
 no results found
+done!
\ No newline at end of file