2012-12-16 434 views
0

我遇到登錄問題。登錄php和android

警告:mysql_fetch_row()能夠預計參數1是資源,在C給定的boolean :\瓦帕\ WWW \ droidlogin \ funciones_bd.php上線68

表中的名稱是ocbup_users

在數據庫中密碼被加密存儲。

funciones_db

<?php 

    class funciones_BD { 

     private $db; 

     // constructor 

     function __construct() { 
      require_once 'connectbd.php'; 
      // connecting to database 

      $this->db = new DB_Connect(); 
      $this->db->connect(); 

     } 

     // destructor 
     function __destruct() { 

     } 

     /** 
     * agregar nuevo usuario 
     */ 
     public function adduser($username, $password) { 

     $result = mysql_query("INSERT INTO ocbup_users(username,passw) VALUES('$username', '$password')"); 
      // check for successful store 

      if ($result) { 

       return true; 

      } else { 

       return false; 
      } 

     } 


     /** 
     * Verificar si el usuario ya existe por el username 
     */ 

     public function isuserexist($username) { 

      $result = mysql_query("SELECT username from ocbup_users WHERE username = '$username'"); 

      $num_rows = mysql_num_rows($result); //numero de filas retornadas 

      if ($num_rows > 0) { 

       // el usuario existe 

       return true; 
      } else { 
       // no existe 
       return false; 
      } 
     } 


     public function login($user,$passw){ 

     $result=mysql_query("SELECT COUNT(*) FROM ocbup_users WHERE username='$user' AND passw='$passw' "); 
     $count = mysql_fetch_row($result); 

     /*como el usuario debe ser unico cuenta el numero de ocurrencias con esos datos*/ 


      if ($count[0]==0){ 

      return true; 

      }else{ 

      return false; 

      } 
     } 

    } 


?> 
+0

通常這個錯誤意味着你在查詢的一些錯誤。嘗試打印您的查詢並使用phpmyadmin運行它或將echo mysql_error(); – Ghostman

回答

0

require_once 'connectbd.php';

你確定這是不是:

require_once 'connectdb.php';

嘗試使用,而不是你的MySQL查詢中單引號:

$result = mysql_query("SELECT username from ocbup_users WHERE username = '".$username."'");

+0

此外,檢查答案在這裏:http://stackoverflow.com/q/2973202/443219 –

0

打印出mysql_error()的內容,看看出了什麼問題。在mysql_query()之後立即執行此操作。例如:

$sql = "SELECT COUNT(*) FROM ocbup_users WHERE username='$user' AND passw='$passw' "; 
$res = mysql_query($sql); 
if (!$res) die("FAIL: $sql <br/>" . mysql_error()); 

您可能還想使用LIMIT子句。如果您是PHP和MySQL的新手,本書將幫助您更快上手。 http://www.sitepoint.com/books/phpmysql5/

最佳,雷〜

+0

謝謝,DB說:logstatus'0',爲什麼?該錯誤已解決 –