basti1012.bplaced.net

Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
    <span style="text-decoration:underline"><span style="font-weight:900">Erklärung</span></span> Was sieht de Mensch und was sieht ein Bot bei einem hidden Feld im E-Mail Formular

    Code

                                        
                                    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <style>
      #formbox,h2{
      width:60vw;
      display:flex;
      flex-direction:column;
      text-align:center;
      justify-content:center;
      border:1px solid black;
      margin:20px auto;
    }
    #formbox *{
      width:80%;
      text-align:left;
      padding:5px 0 0 10px;
      margin-left:10%;
    }
    
    
    code{
      color:red;
      
    }
      
    </style>
    
    <h1>Erklärung wie das spam vermeiden durch hidden feld geht</h1>
    <div id="level1">
        <p>Ein normales  formular ohne capacha und hidden feld,so wie ein Mensch es sehen tut wen er eine Seite betretten tut</p>
        <h2>Kontakt</h2>
        <div id="formbox">
            <label>Name</label>
            <input type="text" id="name" name="name" value="basti1012">
            <label>Email</label>
            <input type="text" id="email1" name="email" value="basti1012@soforthilfe-forum.de">
            <label>Betreff</label>
            <input type="text" id="betreff" name="betreff" value="Test eintrag">
            <label>Nachricht</label>
            <textarea id="nachricht" name="bettref">irgendein text zum testen</textarea>
            <input type="button" id="absenden" value="absenden">
        </div>
        <p> Klicken wir mal auf senden und sehen was passiert</p>
        <div id="out1"></div>
            <h4>Der Spam Bot sieht das</h4>
            <code id="out2"></code>
        
            <p> Die Bots sind so Programmiert das die nach input Feldern suchen die den namen ( name,email,betreff,nachricht,versenden,absenden,tel usw...) haben<br>
          In diesen Formular finde er 
            <li>name</li>
            <li>email</li>
            <li>betreff</li>
            <li>Nachricht</li>
            <p>Für den Bot ist es wichtig das email Feld zu finden
            <br>Wenn er das hat  füllt er die Felder aus und sendet sie ab</p>
            <h3>Somit hast du jetzt Spam erhalten</h3>
        </div>
        <div id="level2"> 
            <h2>Jetzt die hidden Lösung</h2>
            <p>Da der Bot kein Mensch ist und nur Felder ausfüllen tut die er kennt,geben wir das Emailfeld einen anderen Namen <br>
            <code>&lt;input type="text" name="bots_stinken_nach_secheisse" value=""></code>
            <p>und ein hidden Feld mit den namen Email ( danach suchen die Bots ja)</p>
            <code>&lt;input type="text" name="email" value=""&gt;</code>
            <button id="neuername">Bitte klicken um felder einzubauen  </button>
            <p>Ein Mensch sieht immer noch das Formular unverändert, aber der Bot sieht das</p>
           <code id="out3"></code>
           <p>diesmal findet er immer noch die gleichen Felder,aber das das Feld mit den neuen Namern ( 'bots_stinken_nach_secheisse') kennt er nicht  und füllt es auch nicht aus.Deine Besucher sehen ja das normale Foprmular,den ist es egal wie die Felder heissen.</p>
        
           <p>Dann haben wir aber noch das hidden Feld mit den namen "email".
    Der Bot weiß ja nicht das wir die Email mit den feld "bots_stinken_nach_secheisse" abfragen und füllt das hiddenfeld aus was ja email heisst.</p>
           <p>Dieses Feld können nur Bots auslesen  und kein normaler User, und somit erkennen wir Bots</p>
               
           <button id="senden2">Klicke weiter</button>
           <p>Das wird jetzt gesendet</p>
           <div id="out4"></div>
    
               <p> Im Php Code Fragen wir einfach ab ob das hidden Feld ausgefüllt wurde</p>
           </div>
    <pre><code>
    &lt;?php 
    $spam1=false;
    $spam2=false;
    
    //jetzt echtes email feld
    if(empty($_post['bots_stinken_nach_secheisse'])){
       $psam1=true;
    }
    
    // falsches email hidden Feld
    if(!empty($_post['email'])){
       $psam2=true;
    }
    
    $($spam1==true or $pam2==true){
         die(" Ich bin ein Spam"):
         exit;
    }else{
         echo Kein Spam , Email kann verschickt werden ";
    }
    ?>
    </code></pre>
      <script>
        $('#absenden').click(function(){
      
      nam=$('#name').val();  ema=$('#email1').val();
      bet=$('#betreff').val();
      sms=$('#nachricht').val();
      
     $('#out1').html('Das wird gesendet<br>Name = '+nam+'<br>Email = '+ema+'<br>Betreff = '+bet+'<br>Nachricht = '+sms);
    })
    
    var $obj = $('#formbox');
    $('#out2').text($obj[0].outerHTML);
    
    
    $('#neuername').click(function(){
    $obj.append('<input type="hidden" id="email" name="email" value="ich bin ein bot und habe das feld ausgefüllt">');
     
    $('#out3').text($obj[0].outerHTML);
    $('#email').attr('name','bots_stinken_nach_secheisse');
    });
     
    function aa(){
     return $('#email').val();  
    }
    $('#senden2').click(function(){    
      nam=$('#name').val();
    
      ema=$('#email1').val();
      bet=$('#betreff').val();
      sms=$('#nachricht').val();  
      spam=aa();  
    $('#out4').html('Das wird gesendet<br>Name = '+nam+'<br>Email = '+ema+'<br>Betreff = '+bet+'<br>Nachricht = '+sms+'<br> und das hidden Feld = '+spam)
    })
        
        
      </script>
    </div>
    
    </div>