PaivaJr 0 Denunciar post Postado Abril 24, 2016 é simples : a sql da execução da procedure funciona normalmente no firebird usando o IBExpert, mas no php ele não acusa erro, dá como processada, mas não altera o banco de dados. Alguém pode me esclarecer isso ?lembrando : //Começa uma transação de leitura e escrita. if (!$transacao = ibase_trans("IBASE_COMMITTED", $conexao2)) { echo "Erro de Transacao"; $sequencia='no'; } //echo $xlogin; $sql = "SELECT * from p_usuarios ('A','$xlogin','$empresa','$password','$tipo','$acesso','$sistema','$nome','$cargo','$setor', '$email','$datacadastro','$passant','$dataexpiracao','$dataultacesso','$qteacesso')"; $resultado = ibase_query($transacao, $sql); if (!$committed = ibase_commit($transacao)) { echo "Erro no committed"; $sequencia='no'; }else{ echo "Committed ok"; $sequencia='no'; } if (!$resultado) { $cont_mens="Registro do Credenciamento nao foi alterado"; echo ibase_errmsg(); $sequencia='no'; } else { echo $resultado; $sequencia='stop'; $cont_mens="Foi adicionado $nome ao Cadastro de Credenciamento"; echo"Alteração efetuada com sucesso"; ibase_close($conexao2); } Compartilhar este post Link para o post Compartilhar em outros sites
souza2x 0 Denunciar post Postado Dezembro 13, 2016 Boa tarde! Um pouco tarde para a resposta, mas tive um problema semelhante. No meu caso, a procedure que eu utilizo sempre retorna algo. E o commit só foi possível colocando a linha que invoca este retorno. /** Executo o comando SQL */ $sth = ibase_query($dbh, $sql); $row = ibase_fetch_assoc($sth);//Linha responsável em invocar o return da procedure ibase_commit(); Compartilhar este post Link para o post Compartilhar em outros sites