sql >> Database >  >> RDS >> Mysql

PHP/MYSQL Naam ophalen op basis van een ander criterium

Ten eerste, pak NOOIT het wachtwoord uit de database, dat is gewoon een extreem slechte gewoonte.

Ten tweede wil je de gebruiker alleen als correct accepteren als SLECHTS één rij wordt geretourneerd.

als laatste bindColumn is wat je zoekt.

<?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();
    }
}
?>

Dat zou voor jou moeten werken.



  1. Mysql, hervorm gegevens van lang / hoog naar breed

  2. Hoe log ik in en authenticeer ik bij Postgresql na een nieuwe installatie?

  3. Beginnend met mysql-schema's voor versiebeheer zonder overkill. Goede oplossingen?

  4. Kafka connect-configuratie om records van Aurora te verzenden met AWS MSK