Netestoval jsem, ale nepřekvapí mě mysqli_multi_query()
očekává se, že bude mít každý dotaz stejný oddělovač. Zkuste vytvoření uložené procedury zabalit do jediného dotazu bez použití modifikátoru DELIMITER ?
Takže místo
<?php
$results = mysqli_multi(
'DELIMITER $$
USE `dbname`$$
CREATE PROCEDURE `procname`(IN inputparameters)
BEGIN
... procedure goes here
;
END$$
DELIMITER ;
');
?>
Udělej to
<?php
$result = mysqli_query('CREATE PROCEDURE `procname`(IN inputparameters) BEGIN ...; END');
A řekněte nám, jestli to funguje :)