转自:http://www.robert-gonzalez.com/2007/06/01/mysql-multiple-result-procs-in-php/
代码
<
html
>
< head >< title > Stored Procedure Tester - MySQL </ title ></ head >
< body >
< ? php
$sql = '' ;
$show_results = false ;
if ( isset ( $_POST [ ' form_submitted ' ]))
{
// The form was submitted
$sql = $_POST [ ' query ' ];
echo ' <p>The query you entered entered was <strong> ' . $sql . ' </strong>. ' ;
// Change the params to you own here...
$mysql = new mysqli( ' localhost ' , ' USER ' , ' PASSWORD ' , ' DATABASENAME ' );
if ( mysqli_connect_errno ())
{
die ( printf ( ' MySQL Server connection failed: %s ' , mysqli_connect_error ()));
}
// Check our query results
if ( $mysql -> multi_query( $sql ))
{
$show_results = true ;
$rs = array ();
do {
// Lets work with the first result set
if ( $result = $mysql -> use_result())
{
// Loop the first result set, reading it into an array
while ( $row = $result -> fetch_array(MYSQLI_ASSOC))
{
$rs [] = $row ;
}
// Close the result set
$result -> close();
}
} while ( $mysql -> next_result());
}
else
{
echo ' <p>There were problems with your query [ ' . $sql . ' ]:<br /><strong>Error Code ' . $mysql -> errno . ' :: Error Message ' . $mysql -> error . ' </strong></p> ' ;
}
$mysql -> close();
}
echo ' <form id="proc_tester" action=" ' . basename ( $_SERVER [ ' SCRIPT_FILENAME ' ]) . ' " method="post">
<p>Enter your procedure:</p>
<p><input type="text" name="query" size="175" maxlength="255" value=" ' . $sql . ' " /></p>
<p><input type="hidden" name="form_submitted" value="true" /><input type="submit" name="submit" value="Submit query" /></p>
</form> ' ;
if ( $show_results ) {
echo ' <pre> ' ;
print_r ( $rs );
echo ' < /pre> ' ;
}
?>
< head >< title > Stored Procedure Tester - MySQL </ title ></ head >
< body >
< ? php
$sql = '' ;
$show_results = false ;
if ( isset ( $_POST [ ' form_submitted ' ]))
{
// The form was submitted
$sql = $_POST [ ' query ' ];
echo ' <p>The query you entered entered was <strong> ' . $sql . ' </strong>. ' ;
// Change the params to you own here...
$mysql = new mysqli( ' localhost ' , ' USER ' , ' PASSWORD ' , ' DATABASENAME ' );
if ( mysqli_connect_errno ())
{
die ( printf ( ' MySQL Server connection failed: %s ' , mysqli_connect_error ()));
}
// Check our query results
if ( $mysql -> multi_query( $sql ))
{
$show_results = true ;
$rs = array ();
do {
// Lets work with the first result set
if ( $result = $mysql -> use_result())
{
// Loop the first result set, reading it into an array
while ( $row = $result -> fetch_array(MYSQLI_ASSOC))
{
$rs [] = $row ;
}
// Close the result set
$result -> close();
}
} while ( $mysql -> next_result());
}
else
{
echo ' <p>There were problems with your query [ ' . $sql . ' ]:<br /><strong>Error Code ' . $mysql -> errno . ' :: Error Message ' . $mysql -> error . ' </strong></p> ' ;
}
$mysql -> close();
}
echo ' <form id="proc_tester" action=" ' . basename ( $_SERVER [ ' SCRIPT_FILENAME ' ]) . ' " method="post">
<p>Enter your procedure:</p>
<p><input type="text" name="query" size="175" maxlength="255" value=" ' . $sql . ' " /></p>
<p><input type="hidden" name="form_submitted" value="true" /><input type="submit" name="submit" value="Submit query" /></p>
</form> ' ;
if ( $show_results ) {
echo ' <pre> ' ;
print_r ( $rs );
echo ' < /pre> ' ;
}
?>