Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Authentification Php/MySQL => Rajout d'une suite de chiffre ?

2 réponses
Avatar
Bruno Variole
Bonjour,

J'ai sur mon site une partie protege par un classique login/pass qui me sert
a authentifier mes utilisateurs ...

J'aimerais rajouter en sus du login/pass l'obligation pour l'utilisateur de
rentrer un code qui s'affiche sous la forme d'une image (on voit beaucoup
cela maintenant pour eviter les inscriptions automatiques)

Quelqu'un a deja fait cela ? car je patauge un peu (je debute)

merci d'avance

2 réponses

Avatar
newdb
Bruno Variole wrote:
J'aimerais rajouter en sus du login/pass l'obligation pour l'utilisateur de
rentrer un code qui s'affiche sous la forme d'une image (on voit beaucoup
cela maintenant pour eviter les inscriptions automatiques)


<?php
//renseigner correctement les deux lignes ci-dessous
$idConnexion = mysql_connect($sql_serveur, $sql_user, $sql_pass);
$db_selected = mysql_select_db($sql_bdd, $idConnexion);

//si premier appel du formulaire ou envoi à vide
if (!($_POST['verif'])) {
//création d'une valeur aléatoire de 32 caractères
//faudra réduire !!!
$alea = md5 (uniqid (rand()));
//création d'une image de cette valeur
$img = imagecreate(350, 30);
$coul_fond = imagecolorallocate($img, 0, 0, 0);
$coul_texte = imagecolorallocate($img, 255, 255, 255);
imagestring($img, 6, 5, 5, $alea, $coul_texte);
$fichier_image = imagejpeg($img, $alea.".jpg");
//insertion en base de la valeur
$requete = "INSERT INTO Acces SET AccesID = '$alea'";
@mysql_query($requete, $idConnexion);
//affichage du formulaire
//compléter ce qui manque dans le html
echo "<html><head></head><body>";
echo "<img src="".$alea.".jpg"><br><br>";
echo "<form method="post" action="".$PHP_SELF."">";
echo "<input type="text" name="verif"><input type="submit">";
echo "<input type="hidden" name="supp" value="".$alea."">
echo "</form>";
echo "</body></html>";
}
//si formulaire envoyé avec valeur
else {
$url_non = "http://".$SERVER_NAME."/non.php?s=".urlencode($supp);
$url_oui = "http://".$SERVER_NAME."/oui.php?s=".urlencode($supp);
$controle = $_POST['verif'];
//recherche de la correspondance en base
$requete = "SELECT AccesID FROM Acces WHERE (AccesID = '$controle')";
$idresultat = mysql_query($requete, $idConnexion);
if (mysql_num_rows($idresultat) == 0) {
//si pas de correspondance, on éjecte
header("Location: $url_non");
exit;
}
else {
// sinon on laisse passer
header("Location: $url_oui");
}
}
?>

**********************************************
au début des pages non.php et oui.php
**********************************************

<?php
//renseigner correctement les deux lignes ci-dessous
$idConnexion = mysql_connect($sql_serveur, $sql_user, $sql_pass);
$db_selected = mysql_select_db($sql_bdd, $idConnexion);

$a_supprimer = $_GET['s'];
//on supprime de la base la valeur
$requete = "DELETE FROM Acces WHERE AccesID = '$a_supprimer'";
@mysql_query($requete, $idConnexion);
//on supprime du répertoire le fichier image
unlink $a_supprimer.".jpg";
?>


--
@@@@@
E -00 doit y avoir plus simple !
' `) /
|_ =="

Avatar
Vincent
Hello,

Essaie sur http://www.az-php.com/, sur le cours "26° Coder son ANTI-FLOOD"

Tu dois être membre pour consulter l'article, mais cela ne te coûte rien...

@+, le cours d'informatique se termine ! ;-)