テストはしていませんが、mysqli_multi_query()
に驚かされることはありません。 各クエリに同じ区切り文字があることを期待しています。DELIMITER修飾子を使用せずに、ストアドプロシージャの作成を単一のクエリにパックしてみてください。
代わりに
<?php
$results = mysqli_multi(
'DELIMITER $$
USE `dbname`$$
CREATE PROCEDURE `procname`(IN inputparameters)
BEGIN
... procedure goes here
;
END$$
DELIMITER ;
');
?>
これを行うだけです
<?php
$result = mysqli_query('CREATE PROCEDURE `procname`(IN inputparameters) BEGIN ...; END');
そして、それが機能するかどうか教えてください:)