Witam. Mam do Was dwa pytania. Do tej pory działałem na MySql, chcialem przejść na PDO, już mam skrypt logowania i rejestracji, lecz mam problem z lekkim przerobieniem tych skryptów. Chcę aby skrypt rozpoznawał nick, który nie pasuje do tego znajdującego się w bazie i wyświetlał odpowiendi komunikat, tak samo z hasłem. Ogólnie wiem jak to zrobić, lecz nie wiem w którym miejscu programy dodać owe instrukcję warunkowe.
Oto kod:
$db = new PDO('mysql:host=host;dbname=baza', 'user', 'haslo', array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'")) or die();
if(isset($_POST['wyslano'])){ //Sprawdzamy, czy submit został wciśnięty
//Usuwamy białe znaki z przesłanych danych
$nick = trim($_POST['nick']);
$haslo = trim($_POST['haslo']);
$stmt = $db->prepare("SELECT * FROM uzytkownicy WHERE nick=:nick AND haslo=:haslo");
$stmt->bindValue(":nick", $nick, PDO::PARAM_STR);
$stmt->bindValue(":haslo", $haslo, PDO::PARAM_STR);
$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC);
if($stmt->rowCount()!=0){
echo "Zalogowałeś się!";
session_start();
$_SESSION['nick'] = true;
$_SESSION['nick'] = $row['nick'];
}
else{
echo '<div style="color:red">Login i/lub hasło są nieprawidłowe</div>';
form();
}
}
else form();
Pytanie 2:
Czy PHP data object automatycznie warunkuje wykonanie jakiegoś zadania na stronie? że możemy daną ilość razy próbować się zalogować, później musimy odczekać jakąś ilość czasu i wtedy możemy próbować dalej?