0

ログインに問題があります。

警告: mysql_fetch_row() は、パラメーター 1 がリソースであると想定し、ブール値は C:\wamp\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;

            }
        }

    }


?>
4

2 に答える 2

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/

ベスト、〜レイ

于 2012-12-16T17:43:09.447 に答える
0

require_once 'connectbd.php';

そうではないですか:

require_once 'connectdb.php';

代わりに、mysql クエリ内で一重引用符を使用してみてください。

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

于 2012-12-16T17:35:46.413 に答える