15

PHPを使用したmysqlのストアドプロシージャに関係するドキュメントが大幅に不足しています。現在、PHPを介して呼び出すストアドプロシージャがありますが、outパラメータの値を取得するにはどうすればよいですか?

4

2 に答える 2

15

この投稿で回答されているようです:

http://forums.mysql.com/read.php?52,198596,198717#msg-198717

mysqli PHP API の場合:

sproc myproc( IN i int, OUT j int ) を仮定します。

$mysqli = new mysqli(  "HOST", "USR", "PWD", "DBNAME" );
$ivalue=1;
$res = $mysqli->multi_query( "CALL myproc($ivalue,@x);SELECT @x" );
if( $res ) {
  $results = 0;
  do {
    if ($result = $mysqli->store_result()) {
      printf( "<b>Result #%u</b>:<br/>", ++$results );
      while( $row = $result->fetch_row() ) {
        foreach( $row as $cell ) echo $cell, "&nbsp;";
      }
      $result->close();
      if( $mysqli->more_results() ) echo "<br/>";
    }
  } while( $mysqli->next_result() );
}
$mysqli->close();
于 2008-09-07T04:58:27.197 に答える
7

mysql、mysqli、および pdo でこれを行う方法の例を次に示します。

http://www.joeyrivera.com/2009/using-mysql-stored-procedures-with-php-mysqlmysqlipdo/

于 2009-01-28T03:57:18.330 に答える