TransWikia.com

como executar uma procedure com parametro em php

Stack Overflow em Português Asked by teste1234 on March 6, 2021

Preciso executar uma procedure enviando uma parâmetro pelo php mais não está retornando segue o código abaixo:

//código em PHP
$figura =  mysqli_query($conexao,"CALL `spare_change`.`boxlabel`('".$template."')") or die("erro no update");

//A Procedure Criada
CREATE DEFINER=`root`@`%` PROCEDURE `boxlabel`(template varchar(20))
BEGIN

-- update prom.label_template set label_tpl_content = replace(label_tpl_content, ' eJz', 'eJz') where label_tpl_name = @template;
select * from prom.label_template where label_tpl_name = @template;

END

onde está o erro no código?

One Answer

Podes correr uma query antes para definir uma variável para a procedure, e depois usar essa variável na chamada.

mysqli_query($conexao, "SET @template = '" . $template . "'");
$figura =  mysqli_query($conexao,"CALL `spare_change`.`boxlabel`(@template)") or die("erro no update");

Mas para além disso, na procedure em si, o -- está a fazer com que o update seja apenas uma linha de comentário.

Experimenta remover o -- do inicio desta linha, senão esse código não vai ser executado.

-- update prom.label_template set label_tpl_content = replace(label_tpl_content, ' eJz', 'eJz') where label_tpl_name = @template;

Answered by Leite on March 6, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP