dimanche 5 juin 2016

'Equal to' if statement failing on variable from PDO query

I am trying to see if a code stored in my database is the same as the one the user provides, currently

user would provide the vCode via POST but i have it set to what it actually is for testing purposes $vCode = "69582";

Now i'm using a PDO query to get the vCode that's in the database.

$dsn1 = "mysql:dbname={$this->dbDatabaseName};host={$this->dbHostname};";
            $conn1 = new PDO($dsn1, $this->user, $this->password);
            $conn1->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            $sql1 = "SELECT vCode FROM `accinfo` WHERE Email = '$email'";
            $stmt1 = $conn1->prepare($sql1);
            $stmt1->execute();
            if( $stmt1->rowCount() > 0 ) {

             $result = $stmt1->setFetchMode(PDO::FETCH_ASSOC); 
             foreach(new TableRows(new RecursiveArrayIterator($stmt1->fetchAll())) as $k=>$v) { 
             $actualVCode = $v;
             }

Then i see if the vCode i got from the database ($actualVCode) is equal to the $vCode

              if ( $actualVCode == $vCode ){
              echo "match";
              }

The value stored in my database is a string and is 69582, but whenever i compare them like i do above, the if statement never comes back as true. But when i echo both $vCode and $actualVCode, they both are 69582.

Aucun commentaire:

Enregistrer un commentaire