PHP + MySql + Stored Procedures, wie erhalte ich Zugriff auf einen „Out“-Wert?
-
09-06-2019 - |
Frage
Es mangelt stark an Dokumentation zu gespeicherten Prozeduren in MySQL mit PHP.Ich habe derzeit eine gespeicherte Prozedur, die ich über PHP aufrufe. Wie kann ich den Wert eines Out-Parameters erhalten?
Lösung
Es sieht so aus, als ob es in diesem Beitrag beantwortet wurde:
http://forums.mysql.com/read.php?52,198596,198717#msg-198717
Mit der MySQL-PHP-API:
Angenommen, 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, " ";
}
$result->close();
if( $mysqli->more_results() ) echo "<br/>";
}
} while( $mysqli->next_result() );
}
$mysqli->close();
Andere Tipps
Hier ist ein Beispiel dafür, wie man dies mit MySQL, MySQLI und PDO macht:
http://www.joeyrivera.com/2009/using-mysql-stored-procedures-with-php-mysqlmysqlipdo/
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow