用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2909|回复: 5
收起左侧

[HELP] 试做登陆块出错!!

[复制链接]
发表于 2009-10-7 16:33:56 | 显示全部楼层 |阅读模式
登陆页html:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
<title>后台管理</title>
<link href="<?= $title?>system/application/views/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="con">
<?= form_open('ackground_t/validate') ?>
<div class="input_text">密__码:<input name="p" type="password" maxlength="20"  /></div>
<input  type="submit" id="input_b" value="登 陆"   />
</form>

</div>

控制块:

function validate()
{
   $nick_p=$this->input->post('p',TRUE);
   $sql = "SELECT id FROM user WHERE pas = $nick_p  ";
    $quer=$this->db->query($sql);
       if ($quer->num_rows()> 0 )
      {
          $this->load->view('ackground_m',$nick);
      }
      
}

数据库:字段用utf8_unicode_ci

当密码输入字符为字母时报:

A Database Error Occurred
Error Number: 1054
Unknown column 'd' in 'where clause'
SELECT id FROM user WHERE pas = d

请问是什么问题啊?
发表于 2009-10-7 16:37:59 | 显示全部楼层
$sql = "SELECT id FROM user WHERE pas = '$nick_p'  ";
 楼主| 发表于 2009-10-7 16:50:01 | 显示全部楼层
哦!谢谢版主
 楼主| 发表于 2009-10-7 17:09:52 | 显示全部楼层
但是当html改成
<div class="input_text">用户名:<input name="p" type="text" maxlength="20"  /></div>
控制块改成:

function validate()
{
   $nick_p=$this->input->post('p',TRUE);
   $sql = "SELECT id FROM user WHERE name = $nick_p  ";
    $quer=$this->db->query($sql);
       if ($quer->num_rows()> 0 )
      {
          $this->load->view('ackground_m',$nick);
      }
      
}

输入中文字符,不能找到记录,但数据库内确有此记录?
发表于 2009-10-7 20:25:36 | 显示全部楼层
$sql = "SELECT id FROM user WHERE pas = '$nick_p'  ";
发表于 2009-10-7 21:33:11 | 显示全部楼层
还是基础知识最重要啊!呵呵

本版积分规则