pCloud Premium

Captcha Code einbauen?

  • Soweit ich weiß, ist der Sinn von Captchas ziemlich umstritten, aber hier und hier findest du Anleitungen und Beispiele...

    "Wer die Freiheit aufgibt, um Sicherheit zu gewinnen, wird am Ende beides verlieren."

    Benjamin Franklin


    PRISM | VORRATSDATENSPEICHERUNG | INERNETSPERREN

  • Hallo,

    Danke dir. Habe versucht das Rechen Captcha einzubauen aber das funktioniert nicht so richtig. Die Zahlen werden angezeigt aber es wird nicht Überprüft ob die Zahlen richtig sind.

    Hast du eine Idee??

    DANKE

  • Vielleicht, irgendwer kann dir mit Sicherheit weiterhelfen, aber dazu müsstest du schon zeigen, was du bisher implementiert hast...

    "Wer die Freiheit aufgibt, um Sicherheit zu gewinnen, wird am Ende beides verlieren."

    Benjamin Franklin


    PRISM | VORRATSDATENSPEICHERUNG | INERNETSPERREN

  • Hallo
    Ich habe das hier in der HTML Datei eingebaut (hier der Script

    <form action="register.php" method="post"><table width="100%" border="0"><tr> <td><img src="rechen-captcha.php"></td> <td><input type="text" name="sicherheitscode" size="5"></td> </tr> <tr> <td height="25"> </td> <td height="25"><label> <input name="accept" type="checkbox" id="accept" value="accept"> </label> <input name="send" type="submit" id="send" value="Registrieren"></td> </tr></table></form>


    Und das in der register.php:

    <?phpsession_start(); function encrypt($string, $key) { $result = ''; for($i=0; $i<strlen($string); $i++) { $char = substr($string, $i, 1); $keychar = substr($key, ($i % strlen($key))-1, 1); $char = chr(ord($char)+ord($keychar)); $result.=$char; } return base64_encode($result); } $sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "29jfkd921"); $sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe); if(isset($_SESSION['rechen_captcha_spam']) AND $sicherheits_eingabe == $_SESSION['rechen_captcha_spam']){ unset($_SESSION['rechen_captcha_spam']); } require "global.php";if(isset($_POST['send'])){ if($_POST['username'] && $_POST['accept'] && $_POST['surname'] && $_POST['firstname'] && $_POST['usermail1']==$_POST['usermail2']){ $chars="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwyxz012456789"; @mt_srand(microtime()); for($i=0;$i<=32;$i++){ $activation.=$chars[mt_rand(0,strlen($chars))]; } $activation=md5($activation); $db->query("insert into users (username,usermail,ip_address,date,is_activated,activation_key, firstname, surname, accept) VALUES('".addslashes($_POST['username'])."','".addslashes($_POST['usermail1'])."','".$_SERVER['REMOTE_ADDR']."','".time()."','0','".$activation."','".$firstname."','".$surname."','".$accept."')"); $userid=mysql_insert_id($db->linkid); $search[]="{USERNAME}"; $replace[]=$_POST['username']; $search[]="{ACTIVE}"; $replace[]=$wlhurl."/activate.php?userid=".$userid."&activation=".$activation; $text=str_replace($search,$replace,$mailtext); mail($_POST['usermail1'],$mailtitle,$text,"from:".$mailby); eval("\$tpl->output(\"".$tpl->get("register_ok")."\");"); exit; } else $error="| Es ist ein Fehler aufgetreten.";}eval("\$tpl->output(\"".$tpl->get("register_form")."\");"); ?>

    Leider kann ich kein Englisch, kannst du das in meine Dateien einabuen??

    Solltest du noch was brauchen melde dich bei mir
    DANKE

  • Hallo pcwango!

    Probier es mal so mit dieser register.php:

    Code
    <?phpsession_start(); function encrypt($string, $key) {     $result = '';     for($i=0; $i<strlen($string); $i++) {         $char = substr($string, $i, 1);         $keychar = substr($key, ($i % strlen($key))-1, 1);         $char = chr(ord($char)+ord($keychar));         $result.=$char;     }     return base64_encode($result); } $sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "29jfkd921"); $sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe); require "global.php";if(isset($_POST['send'])){    if($_POST['username'] && $_POST['accept'] && $_POST['surname'] && $_POST['firstname'] && $_POST['usermail1']==$_POST['usermail2'] && isset($_SESSION['rechen_captcha_spam']) AND $sicherheits_eingabe == $_SESSION['rechen_captcha_spam']){        unset($_SESSION['rechen_captcha_spam']);        $chars="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwyxz012456789";        @mt_srand(microtime());        for($i=0;$i<=32;$i++){            $activation.=$chars[mt_rand(0,strlen($chars))];        }        $activation=md5($activation);        $db->query("insert into users (username,usermail,ip_address,date,is_activated,activation_key, firstname, surname, accept) VALUES('".addslashes($_POST['username'])."','".addslashes($_POST['usermail1'])."','".$_SERVER['REMOTE_ADDR']."','".time()."','0','".$activation."','".$firstname."','".$surname."','".$accept."')");        $userid=mysql_insert_id($db->linkid);        $search[]="{USERNAME}";        $replace[]=$_POST['username'];        $search[]="{ACTIVE}";        $replace[]=$wlhurl."/activate.php?userid=".$userid."&activation=".$activation;        $text=str_replace($search,$replace,$mailtext);        mail($_POST['usermail1'],$mailtitle,$text,"from:".$mailby);        eval("\$tpl->output(\"".$tpl->get("register_ok")."\");");        exit;    }    else $error="| Es ist ein Fehler aufgetreten.";}eval("\$tpl->output(\"".$tpl->get("register_form")."\");");?>

  • @ pcwango.

    Hallo erst mal nach langer Zeit.
    Hab mir das mal angesehen und verfolgt. Da stellt sich mir allerdings die Frage:

    Wo bleibt der Sinn wenn ich allen zeige wie ich mich schütze ?
    Ganz ehrlich, da könnte man den Link zu einer Seite wie es ausgehebelt wird, oder eine kleine Funktion dafür gleich mitliefern.

    Nichts für ungut, aber Du kennst mich ja sicher noch und weißt wie ich über solch frei verfügbares denke. Wie Gorthaur bereits sagte

    Soweit ich weiß, ist der Sinn von Captchas ziemlich umstritten,.....

    Sollte aber nur so meine Meinung zu diesem Beitrag sein.

    miG

    ...und wenn Du glaubst es geht nichts mehr,
    dann kommt von irgendwo die Hilfe her !

  • Hallo,

    Deine Meinung ist gerne Willkommen.

    Ich bin nicht weiter gekommen mit Captcha den ich in Formular einbauen wollte. Leider sind diese Spam Roboter eine harte Nuss. Dadurch ist jetzt der E_Mail Postfach nicht so voll.
    :zwinker:

WindowsPower.de Artikel

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!