簡體   English   中英

從PHP存儲過程返回結果

[英]return result from stored procedure in php

我想從php中的mysql存儲過程獲取結果集。 我怎樣才能做到這一點? 任何幫助表示贊賞。 最好是有人可以發布代碼段! 例如,如果我有一個登錄表。 我創建了一個存儲過程

SELECT * FROM login

現在我需要在php中調用此存儲過程並遍歷結果集

PHP的:

$mysqli = new mysqli("localhost", "root", "", "quadv2_dev");

if (!$mysqli->multi_query("CALL testlist()")) {
    echo "CALL failed: (" . $mysqli->errno . ") " . $mysqli->error;
}

do {
    if ($res = $mysqli->store_result()) {
        printf("---\n<pre/>");
        print_r($res->fetch_all());
        $res->free();
    } else {
        if ($mysqli->errno) {
            echo "Store failed: (" . $mysqli->errno . ") " . $mysqli->error;
        }
    }
} while ($mysqli->more_results() && $mysqli->next_result());

的mysql:

DELIMITER $$

CREATE
    /*[DEFINER = { user | CURRENT_USER }]*/
    PROCEDURE `quadv2_dev`.`testlist`()
    /*LANGUAGE SQL
    | [NOT] DETERMINISTIC
    | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
    | SQL SECURITY { DEFINER | INVOKER }
    | COMMENT 'string'*/
    BEGIN

    SET @Qry ="SELECT *  FROM Content";
    PREPARE st FROM @Qry;
    EXECUTE st;
    DEALLOCATE PREPARE st;

    END$$

DELIMITER ;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM