-1

Here I am trying to display data from 2 tables: member_login_info & member_master

There is supposed to be unique record for each uid (username) and pass (password) from two tables member_login_info and member_master with cust_id as primary key and foreign key.

The user and pass is captured from a related html file

The query I wrote is here:

$uid = $_POST['user']; 
$pass = $_POST['pass'];

$sql = "SELECT member_login_info.email, member_master.fname, member_master.lname, member_master.dob  
      FROM member_login_info INNER JOIN member_master 
      ON member_login_info.cust_id = member_master.cust_id
      WHERE member_login_info.profilename = 'user' AND member_login_info.password = 'pass'";

$rs=mysql_query($sql);


while($result=mysql_fetch_array($rs))
{
    echo 'First Name: '.$result[fname].'<br />
          Last Name: '.$result[lname].'<br />
          Email Address: '.$result[email].'<br />
          Date of Birth: '.$result[dob].'<br />';
}

However, I am getting an error: Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\Project S8000\test.php on line 20

Where am I going wrong? Can anyone pls help?

alroc
  • 27,574
  • 6
  • 51
  • 97
sansam
  • 57
  • 10
  • Your website/page/app is wide open to a [SQL injection attack](http://en.wikipedia.org/wiki/SQL_injection). Fix that before you start trying to fix your logic errors. – alroc Dec 26 '14 at 02:43
  • possible duplicate of [mysql\_fetch\_array() expects parameter 1 to be resource (or mysqli\_result), boolean given](http://stackoverflow.com/questions/2973202/mysql-fetch-array-expects-parameter-1-to-be-resource-or-mysqli-result-boole) – John Conde Dec 26 '14 at 04:37

1 Answers1

0

I think your $rs variable contains false, which is a boolean. so, first check it before mysql_fetch_array.In case mysql_query fails, it returns false, a boolean value.Try to add check..

   $result = mysql_query("SELECT member_login_info.email, member_master.fname, 
    member_master.lname, member_master.dob  
    FROM member_login_info INNER JOIN member_master 
    ON member_login_info.cust_id = member_master.cust_id
    WHERE member_login_info.profilename = 'user' AND member_login_info.password = 'pass'";
    ");

        if (!$result) { // add this check.
            die('Invalid query: ' . mysql_error());
        }
A l w a y s S u n n y
  • 36,497
  • 8
  • 60
  • 103