Methode DEVINER nombre mot ou autres

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Methode DEVINER nombre mot ou autres

Re: Methode DEVINER nombre mot ou autres

par Saian » 15 mars 2021, 13:44

Et on essaie de te faire comprendre pourquoi ça ne fonctionne pas.

Re: Methode DEVINER nombre mot ou autres

par Beebeepc » 15 mars 2021, 13:19

Oui ça c est ce que j avais commencé pour le sujet et qui ne fonctionne pas

Re: Methode DEVINER nombre mot ou autres

par Saian » 14 mars 2021, 19:12

C'est de ce bout de code dont on parle avec or 1.
<input type="number" min ="1" max="100" name="find_number"  value = "<?php echo $nombreInconnu = mt_rand(1, 100); ?>"><br><br>
<input type="hidden" value = "<?php echo $nombreInconnu = mt_rand(1, 100); ?>">

Re: Methode DEVINER nombre mot ou autres

par Beebeepc » 14 mars 2021, 19:07

Là dans ce que j ai envoyé ya rien en rapport avec la question...
Et si ça devait faire ce que tu dis...alors non c est pas du tout ce que je veux...je veux que ça fasse la même chose mais par le formulaire...ma question

Merci pour vos suggestions

Re: Methode DEVINER nombre mot ou autres

par Saian » 14 mars 2021, 19:01

Comme souligné par or 1 n'y a-t-il pas un problème avec l'input hidden, ne manquerait-il pas un attribut ? A noter aussi qu'en faisant un rand à chaque affichage de la page, le nombre va changer à chaque fois. Ça ne t'empêchera pas de vérifier que le nombre saisi correspond ou pas au nombre à trouver, juste que ce dernier va changer à chaque fois et que donc l'indication plus grand ou plus petit ne sera pas toujours vrai par rapport au nouveau nombre à trouver.

Re: Methode DEVINER nombre mot ou autres

par or 1 » 14 mars 2021, 14:35

'le mettre dans une balise html input hidden correctement écrite peut fonctionner'

https://developer.mozilla.org/fr/docs/W ... put/hidden

Re: Methode DEVINER nombre mot ou autres

par Beebeepc » 14 mars 2021, 09:54

Hello Saian

En fait voici mon second code un peu plus arrangé !
Mon mentor veut que je trouve la solution en passant par le formulaire ! je cherche , je reflechis mais j'arrive pas à trouver !
il m'a dit d'ajouter par input number et apres input hidden et de ne pas utiliser les SESSION
pourtant elles me sont caerement utile pour ce code !
alorsvoilà pourquoi j'ai posé la question car j'aurai aimé avoir des idees!
je pense qu'il veut me faire comprendre qu'on peut passer par tel ou tel endroit pour avoir finalement le meme resultat !
je veux pas la soluce , je veux comprendre ou je dois chercher finalement !

<?php session_start(); ?>
<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

<!-- formulaire -->
<div class="container" >
    
        <form action="#" method="POST">
        <h1 style="text-align: center; color:violet">Mission David P !</h1>
        <p style="text-align: center;" > Trouver le chiffre "ALEATOIRE"  MYSTERE entre 1 et 100</p>
        <div class="col-12" style="text-align: center;">
        <label for="entrez le chiffre"></label>
        <input type="number" min ="1" max="100" name="nbre_a_trouver" placeholder="nombre"><br><br>
        <input type="submit"  value="transmettre" ><br>
        </form>
    </div>
</div>
<?php

if (!isset($_SESSION['nbre_a_trouver'])) {
    $nombreInconnu = mt_rand(1, 100); 
    $_SESSION['nbre_a_trouver'] = $nombreInconnu;
   
} else {
    $nombreInconnu = $_SESSION['nbre_a_trouver'] ;
}

if (!empty($_POST['nbre_a_trouver'])) {
    if ($nombreInconnu < $_POST['nbre_a_trouver']) {
        echo "le nombre est trop grand ";
    } elseif ($nombreInconnu > $_POST['nbre_a_trouver']) {
        echo ' le chiffre est trop petit';
    } elseif ($nombreInconnu == $_POST['nbre_a_trouver']) {
        echo 'bravo vous avez trouvé le nombre n° ' . $nombreInconnu ;
        //echo 'vous avez trouvé le chiffre magique en' . $nbreClic;
    
/*if ($nombreInconnu == $_POST['nbre_a_trouver']) {
    var_dump($_SESSION);
    $nbreClic = $_SESSION['nbre_a_trouver'] ;
}
     */   
        unset($_SESSION['nbre_a_trouver']);
        echo '<br><a href="/aleatoire_index.php">Je veux rejouer</a></br>';
    } 
}
?>

Re: Methode DEVINER nombre mot ou autres

par Saian » 13 mars 2021, 19:46

Salut Beebeepc, en fait la session sert à rien dans le premier code, tu peux supprimer les 2 lignes que ça ne changera rien au résultat. Je ne comprends pas ce que ton mentor (?) attend de toi ? Et mettre le résultat dans le code source de la page je vois pas vraiment l'intérêt, il suffit d'afficher la source pour avoir le résultat. :-k

Re: Methode DEVINER nombre mot ou autres

par Beebeepc » 13 mars 2021, 17:34

Oui peut être mais ma question etait: comment passer par le formulaire et non par session..j ai pas mis mon code un peu plus compliqué car je cherche à trouver une idée par le formulaire

Re: Methode DEVINER nombre mot ou autres

par or 1 » 13 mars 2021, 15:54

dans le code donné, il n'y a aucun usage utile de la session. cela fonctionne car le nombre est codé en dur.

le mettre dans une balise html input hidden correctement écrite peut fonctionner mais il est facile pour le joueur d'avoir le réponse. alors qu'en utilisant correctement une session, il n'est pas possible pour le joueur d'avoir le résultat directement.

Methode DEVINER nombre mot ou autres

par Beebeepc » 13 mars 2021, 10:53

Hello !

j'ai une petite question :
j'ai un petit code que j'ai fait:
<label for="entrez le chiffre"></label>
<input type="number" min ="1" max="100" name="nbre_a_trouver" placeholder="nombre"><br><br>
<input type="submit" value="transmettre"><br>

</form>

<?php

$nombreInconnu = 25;

if (!empty($_POST['nbre_a_trouver'])) {
    if ($nombreInconnu < $_POST['nbre_a_trouver']) {
        echo "le nombre est trop grand ";
    }
    if ($nombreInconnu > $_POST['nbre_a_trouver']) {
        echo ' le chiffre est trop petit';
    }
    if ($nombreInconnu == $_POST['nbre_a_trouver']) {
        echo 'bravo vous avez trouvé le nombre n°' . $nombreInconnu ;
    }
}$_SESSION['nbre_a_trouver'] = $nombreInconnu;

unset($_SESSION['nbre_a_trouver']);

?>
Tout marche
Seulement voilà : j'ai utilisé SESSION et mon mentor me demande de trouver un moyen sans utiliser SESSION
Mais passer par le formulaire !
Je voudrais savoir si vous avez des idees !
je viens de mettre mon $nombreInconnu dans mon form :
<input type="number" min ="1" max="100" name="find_number"  value = "<?php echo $nombreInconnu = mt_rand(1, 100); ?>"><br><br>
        <input type="hidden" value = "<?php echo $nombreInconnu = mt_rand(1, 100); ?>">
alors si vous avez des idees ! pour que je trouve la solution !
merci merci