sql >> Databasteknik >  >> RDS >> Mysql

PHP/MYSQL Hämta namn baserat på ett annat kriterium

För det första, ta ALDRIG lösenordet från databasen, det är bara extremt dålig praxis.

För det andra vill du bara acceptera användaren som korrekt om ENDAST en rad returneras.

slutligen bindColumn är vad du letar efter.

<?php
function verify_Username_and_Pass($un, $pwd) {
    $query = "SELECT `First Name`, Username
              FROM table
              WHERE Username = :un AND Password = :pwd";
    // Don't limit the query to only one, if there is a chance that you can
    // return multiple rows, either your code is incorrect, bad data in the database, etc...

    $stmt = $this->conn->prepare($query);
    $stmt->bindParam(':un', $un);
    $stmt->bindParam(':pwd', $pwd);
    $stmt->execute();

    // Only assume proper information if you ONLY return 1 row.
    // Something is wrong if you return more than one row...
    if ($stmt->rowCount() == 1) {
        // User exist
        $stmt->bindColumn('First Name', $firstName);
        $stmt->bindColumn('Username', $username);
        // You can now refer to the firstName and username variables.
        return true;
        $stmt->close();
    } else {
        // User doesn't exist
        return false;
        $stmt->close();
    }
}
?>

Det borde fungera för dig.



  1. SQL Server Hög tillgänglighet:Installera SQL Server-failover-klustrad instans del 2

  2. Importera ett MySQL-schema till Xcode som en CoreData-datamodell

  3. Bygg dynamiskt ett förberett uttalande med call_user_func_array()

  4. Hur kräver jag ett mysql-fält?