6

我正在SQL server2008用作数据库,并且我已经在MSSQL Server 2008. 它在MSSQL Server 2008. 我想从codeigniter. 为此,我编写了这样的代码:

phpService.php:

public function Login($username, $password)
{
    $this->load->model('Apimodel');
    $result = $this->Apimodel->Login($username,$password);

    header('Content-type: application/json');
    echo json_encode(array('LoginResponce'=>$result));
}

apimodel.php:

function Login($UserName,$Password)
{               
    $this->db = $this->GetDB();
    $query =  $this->db->query("EXEC Login");

    return $query->result();

}

当我在没有参数的情况下执行程序时,它工作正常

function Login($UserName,$Password)
    {               
        $this->db = $this->GetDB();
        $query =  $this->db->query("EXEC Login '$UserName','$Password'");

        return $query->result();

    }

但是,当我使用参数执行过程时,它不起作用

谁能告诉我我在这里想念什么?

提前致谢

4

2 回答 2

1

首先,如果你使用 Codeigniter,我推荐使用他们的数据库类来连接 MSSQL Server。您可以在此处阅读更多信息:http: //ellislab.com/codeigniter/user-guide/database/configuration.html

如果您没有自动连接到您的数据库,您可以像这样连接:$this->load->database('default');

完成配置设置后,您可以在模型中使用如下功能:

function login($username, $password) {
    return $this->db->query("EXEC spLogin '$username', '$password'")->result();
}
于 2013-09-03T21:39:01.323 回答
0

哦........经过长时间的RND我得到了答案

phpService.php:

    public function Login($username, $password)
    {

        $this->load->model('Apimodel');
        $result = $this->Apimodel->Login($username,$password);

        header('Content-type: application/json');
        echo json_encode(array('LoginResponce'=>$result));

    }

apimodel.php:

function Login($username, $password)
    {
        $this->db = $this->GetDB();
        $query =  $this->db->query("EXEC Login $username,$password");

        return $query->result();
    }
于 2013-09-05T04:08:46.450 回答