如何在codeigniter中调用存储过程并显示输出参数

时间:2015-07-27 17:10:59

标签: php mysql codeigniter stored-procedures codeigniter-2

我一直在codeigniter中使用存储过程,但是我无法显示输出参数这是显示页面的消息

  

错误号码:2014命令不同步;你现在不能运行这个命令SELECT @outputparam作为Parameter3   文件名:C:\ xampp \ htdocs ****** \ system \ database \ DB_driver.php   行号:331

这就是我如何调用程序en codeigniter

    $this->db->trans_start();
    $success = $this->db->query("call insert_person(1,'$name','$email','$phone','$status',@outputparam)";
    $success->next_result();
    $success->free_result();
    $query = $this->db->query('select @outputparam as out_param');
    $this->db->trans_complete();

    return $query->row()->out_param;

我希望,你可以帮助我。

2 个答案:

答案 0 :(得分:0)

尝试删除这些行并检查,

 UIButton *btnCompartilhar = (UIButton *)[cell.contentView viewWithTag:40];
[btnCompartilhar.titleLabel setHidden:YES];
btnCompartilhar.titleLabel.text = sectionTitle;
btnCompartilhar.tag = indexPath.row;
[btnCompartilhar addTarget:self action:@selector(compartilharClick:) forControlEvents:UIControlEventTouchDown];
NSLog(@"%@ %i %i", evento.entretenimento.nome, btnCompartilhar.tag, indexPath.row);

答案 1 :(得分:0)

我解决了这个问题,是因为codeigniter在配置文件“msqli_result.php”中没有这些代码行

function next_result(){
if (is_object($this->conn_id))
{
    return mysqli_next_result($this->conn_id);} }

有了这个,你可以使用next-result()和free_result()