2011-06-10 67 views
0

插入我的PHP页面上奇怪的问题,我试图像这样问题在sqlite3的从PHP

$id=$db->insert_user("'".$parameters['first_name']."'", "'".$parameters['last_name']."'", "'".$parameters['email']."'", "'".$parameters['username']."'", "'".$parameters['password']."'", "'".$parameters['privilege']."'"); 

其中

 try { 
      $db = new SQLite3($this->db_path); 

      echo "INSERT INTO users(first_name,last_name,email,username,password,privilege) VALUES('$first_name','$last_name','$email','$username','$password','$privilege');"; 
      $db->query("INSERT INTO users(first_name,last_name,email,username,password,privilege) VALUES('$first_name','$last_name','$email','$username','$password','$privilege');"); 

      $last_id = $db->lastInsertRowID(); 
      echo ''.$last_id; 
      $db->close(); 
      return $last_id; 
     } catch (Exception $e) { 
      echo 'Exception caught: ', $e->getMessage(), "\n"; 
     } 

INSERT INTO users(first_name,last_name,email,username,password,privilege) VALUES(''drkosh'',''drkosh'',''drkosh'',''drkosh'',''drkosh'',''ignore''); 

结果中插入新行到表的用户(sqlite3的)回声是

INSERT INTO users(first_name,last_name,email,username,password,privilege) VALUES(''drkosh'',''drkosh'',''drkosh'',''drkosh'',''drkosh'',''ignore''); 

错误消息是奇怪的,它说在35行,但35是在切换,我从来没有通过35,有布雷亚KS。有人有什么错误的线索吗? (所有列都OK和表名)

回答

0

看看SQL查询,有''drkosh'',但应该只有'drkosh'

INSERT INTO users(first_name,last_name,email,username,password,privilege) VALUES(''drkosh'',''drkosh'',''drkosh'',''drkosh'',''drkosh'',''ignore''); 

试试这个:

$id=$db->insert_user($parameters['first_name'], $parameters['last_name'], $parameters['email'], $parameters['username'], $parameters['password'], $parameters['privilege']);