[英]Can't use database query in codeigniter and oracle
我已经建立了到oracle 11g的连接,可以看到“登录”页面,但是当我继续登录时,没有记录显示或者我无法登录。 加载模型时,我尝试放置代码来检查是否已连接到数据库。 如果返回TRUE,则表示Im已连接,但始终返回FALSE并显示回显“未选择数据库”。 可能是什么原因? 使用mysql和oracle创建查询有什么区别? 选择查询时是否需要在代码上提交提交?
这是我的联系。 它可以正常工作并显示默认页面。
database.php
$tnsname = '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.112)(PORT = 1521))
(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE)))';
$db['default']['hostname'] = $tnsname;
$db['default']['username'] = 'test';
$db['default']['password'] = 'testpass';
$db['default']['database'] = 'testdb';
$db['default']['dbdriver'] = 'oci8'; //Oracle 11g
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
这是我选择登录的代码
<?php
class User_db extends CI_model {
public function get_record($username, $password) {
if ($this->load->database('default')==FALSE)
{
exit('No database connection!');
}
$query=$this->db->get_where("tbl_user", array("username"=>$username, "password"=>md5($password)));
if($query->num_rows()==1) {
return $query->result();
}
else {
return FALSE;
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.