• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Crimora.nl

    Dennii 11 juli 2026 om 13:13
  • RPG game gebouwd met AI

    zwpgangster 9 juli 2026 om 11:25
  • (Verkoop) Criminals

    Syntax 5 juli 2026 om 13:22
  • Het Grote Vibe Code Topic

    Syntax 30 juni 2026 om 11:54
  • Ictscripters Chat

    Jeffrey.Hoekman 26 juni 2026 om 16:21
  • Het oorspronkelijke Criminals Script

    Jeroen.G 24 juni 2026 om 09:21
  • StraatBaas is back, maar hoe?!

    Syntax 17 juni 2026 om 10:28
  • PWYL source gezocht

    Syntax 29 mei 2026 om 14:03

Marktplaats

  • Straatbaas.eu – complete Nederlandstalige en Engelstalige online maffia-RPG

    Syntax 24 juli 2026 om 16:45
  • 306 Nieuwe Domeinnamen Juni 2026

    shiga 1 juli 2026 om 13:39
  • 4-letter domein: Togi.nl

    evesi 17 juni 2026 om 17:08

Som - beveiliging

  • Morellow
  • 5 mei 2009 om 13:18
  • Closed
  • Morellow
    <!-- <?php
    Berichten
    99
    • 5 mei 2009 om 13:18
    • #1

    Zonet een nieuw scriptje gemaakt wat misschien voor jullie van pas kan komen.
    De gebruiker krijgt een som te zien en dient deze correct op te lossen.

    Als hij/zij het goed heeft opgelost komt er nu 'Goed' te staan, maar je kan natuurlijk daar verdergaan met je eigen code.

    index.php

    PHP
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <LINK REL=StyleSheet HREF="index.css" TITLE="Index">
    <title>Kleine beveiliging</title>
    </head>
    
    
    <body>
    <span class="tekst">
    <form method="post">
    <?php
    /* Dennis de Vries, optel/vermenigvuldig beveiliging
    
    
    Gebruiken mag, weggeven mag, veranderen mag, verkopen NIET...
    
    
    Mail: [email protected]
    MSN:  [email protected]
    */
    error_reporting(E_ALL);
    $Num = Array(
        1 => '1', '2', '3', '4', '5', '6', '7', '8', '9', '10',
    	'11', '12', '13', '14', '15');
    
    
    $Operatoren = Array('optellen', 'vermenigvuldigen');
    
    
    $Som = Array(Rand(1, Count($Num)), Rand(1, Count($Num)));
    $SomOps = $Operatoren[Rand(0, Count($Operatoren) - 1)];
    $s1 = $Som[0];
    $s2 = $Som[1];
    $y = $s1+$s2;
    $x = $s1*$s2;
    Switch($SomOps)
    {
        case 'optellen':
            echo $Num[$Som[0]].' + '.$Num[$Som[1]].' = <input name=optellen id=optellen class=invoeren maxlength=3 size=3><br />';
    		echo'<input name=y id=y value='.$y.' class=invoeren maxlength=3 size=3 type=hidden>';
    		echo'<input type=submit class=submit name=antwoordoptellen value=Antwoord>';
    		echo'</form>';
        break;
        case 'vermenigvuldigen':
            echo $Num[$Som[0]].' * '.$Num[$Som[1]].' = <input name=vermenigvuldigen id=vermenigvuldigen class=invoeren maxlength=3 size=3><br />';
    		echo'<input name=x id=x value='.$x.' class=invoeren maxlength=3 size=3 type=hidden>';
    		echo'<input type=submit class=submit name=antwoordver value=Antwoord>';
    		echo'</form>';
        break;
        default:
            echo 'Er is wat fout gegaan.';
    }
    
    
    if(isset($_POST['antwoordoptellen'])) {
    	
    $optellen = $_POST['optellen'];
    $y = $_POST['y'];
    
    
    if (!is_numeric($optellen)){ echo 'Niet numeriek'; }
    elseif($optellen < 0){ echo'Fout'; }
    elseif($optellen > 30){ echo'Fout'; }
    elseif($optellen != $y){ echo'Niet goed opgeteld, het was '.$y; }
    else{ echo'Goed'; }}
    
    
    if(isset($_POST['antwoordver'])) {
    $x = $_POST['x'];
    
    
    $vermenigvuldigen = $_POST['vermenigvuldigen'];
    if (!is_numeric($vermenigvuldigen)){ echo 'Niet numeriek'; }
    elseif($vermenigvuldigen < 0){ echo'Fout'; }
    elseif($vermenigvuldigen > 225){ echo'Fout'; }
    elseif($x != $vermenigvuldigen){ echo'Niet goed vermenigvuldigd, het was '.$x; }
    else{ echo'Goed'; }}
    ?> <br /><br />
    Door Dennis de Vries
    </span>
    </body>
    </html>
    Toon Meer

    index.css

    PHP
    @charset "utf-8";
    /* CSS Document */
    <!--
    .tekst {
    	font-family: Verdana, Geneva, sans-serif;
    	font-size: 9px;
    }
    input.submit {
    width: 75px;
    height: 20px;
    background-color:#EFEFEF;
    border: 1px solid;
    cursor : pointer;
    }
    input.invoeren {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 9px;
    background-color:#EFEFEF;
    border: 1px solid;
    }
    -->
    Toon Meer


    Liefst wil ik dat jullie met verbeteringen komen, daar kan ik namelijk ook weer van leren.:cheer:

  • Guest, wil je besparen op je domeinnamen? (ad)
  • Stefan.J
    Master
    Ontvangen Reacties
    9
    Berichten
    2.358
    • 5 mei 2009 om 13:26
    • #2

    Enkele tips voor je:

    Gebruik wel quotes om de attributen van de HTML tags heen, anders is de HTML niet valid.
    Deze code is niet functioneel als Captcha vervanging, omdat:
    - Computers ook kunnen optellen en vermenigvuldigen.
    - Het antwoord al in een hidden field staat, deze is voor een bod zo te lezen!

    Verder ziet de code er redelijk uit, probeer het nog iets meer over regels te spreiden, en wees iets duidelijker in de naamgeving ($x en $y zegt niet zoveel, al zijn het standaard variabele die vaak een telling bevatten). Daarnaast zijn hoofdletters niet gebruikelijk in langauge constructors (echo(), print() en switch() zijn bijvoorbeeld langauge constructors, maar array() is er ook één).

    Nieuwe reactie samengevoegd met originele reactie op 05.05.09 13:28:58:
    HTML commentaar tags (<!-- Commentaar --> ) zijn niet nodig binnen een extern CSS bestand. Het is eigenlijk zelfs niet meer nodig binnen een HTML bestand zelf!

    Edit:

  • Morellow
    &amp;lt;!-- &amp;lt;?php
    Berichten
    99
    • 5 mei 2009 om 13:33
    • #3

    Oke bedankt, hier heb ik wel wat aan.
    Aan de HTML tags dacht ik zelf ook al ja, alleen had het later even weggehaald want ik had ergens een error zitten door een slashback die ik verkeerd had geplaatst 8-)

    Comment in CSS is door DW zelf geplaatst :P Had m ff snel gemaakt

    Edit:

    Bewerkte versie:

    PHP
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link rel="stylesheet" href="index.css" title="Index" />
    <title>Test</title>
    </head>
    
    
    <body>
    <span class="tekst" />
    <form method="post" action="index.php" />
    <?php
    /* Dennis de Vries, optel/vermenigvuldig beveiliging
    
    
    Gebruiken mag, weggeven mag, veranderen mag, verkopen NIET...
    
    
    Mail: [email protected]
    MSN:  [email protected]
    */
    error_reporting(E_ALL);
    $Num = Array(
        1 => '1', '2', '3', '4', '5', '6', '7', '8', '9', '10');
    
    
    $Operatoren = Array('optellen', 'vermenigvuldigen');
    
    
    $Som = Array(Rand(1, Count($Num)), Rand(1, Count($Num)));
    $SomOps = $Operatoren[Rand(0, Count($Operatoren) - 1)];
    $s1 = $Som[0];
    $s2 = $Som[1];
    $y = $s1+$s2;
    $x = $s1*$s2;
    $num1 = $Num[$Som[0]];
    $num2 = $Num[$Som[1]];
    $optely = sha1($y);
    $vermex = sha1($x);
    switch($num1){
    	case 1: $num1 = 'Eén'; break;
    	case 2: $num1 = 'Twee'; break;
    	case 3: $num1 = 'Drie'; break;
    	case 4: $num1 = 'Vier'; break;
    	case 5: $num1 = 'Vijf'; break;
    	case 6: $num1 = 'Zes'; break;
    	case 7: $num1 = 'Zeven'; break;
    	case 8: $num1 = 'Acht'; break;
    	case 9: $num1 = 'Negen'; break;
    	case 10: $num1 = 'Tien'; break;
    	default: $num1 = 'Kapot';
    } switch($num2){
    	case 1: $num2 = 'Eén'; break;
    	case 2: $num2 = 'Twee'; break;
    	case 3: $num2 = 'Drie'; break;
    	case 4: $num2 = 'Vier'; break;
    	case 5: $num2 = 'Vijf'; break;
    	case 6: $num2 = 'Zes'; break;
    	case 7: $num2 = 'Zeven'; break;
    	case 8: $num2 = 'Acht'; break;
    	case 9: $num2 = 'Negen'; break;
    	case 10: $num2 = 'Tien'; break;
    	default: $num2 = 'Kapot';
    }
    Switch($SomOps)
    {
        case 'optellen':
            echo $num1.' + '.$num2.' = <input name=\'optellen\' id=\'optellen\' class=\'invoeren\' maxlength=\'3\' size=\'3\' /><br />';
    		echo'<input name=\'optely\' id=\'optely\' value=\'' .$optely. '\' class=\'invoeren\' maxlength=\'3\' size=\'3\' type=\'hidden\' />';
    		echo'<input type=\'submit\' class=\'submit\' name=\'antwoordoptellen\' value=\'Antwoord\' />';
        break;
        case 'vermenigvuldigen':
            echo $num1.' * '.$num2.' = <input name=\'vermenigvuldigen\' id=\'vermenigvuldigen\' class=\'invoeren\' maxlength=\'3\' size=\'3\' /><br />';
    		echo'<input name=\'vermex\' id=\'vermex\' value=\'' .$vermex. '\' class=\'invoeren\' maxlength=\'3\' size=\'3\' type=\'hidden\' />';
    		echo'<input type=\'submit\' class=\'submit\' name=\'antwoordver\' value=\'Antwoord\' />';
        break;
        default:
            echo 'Er is wat fout gegaan.';
    }
    
    
    if(isset($_POST['antwoordoptellen'])) {
    	
    $optellen = sha1($_POST['optellen']);
    $y = $_POST['optely'];
    
    
    
    
    if($optellen > 30){ echo'Fout'; }
    elseif($optellen != $y){ echo'Niet goed opgeteld'; }
    else{ echo'Goed'; }}
    
    
    if(isset($_POST['antwoordver'])) {
    
    
    $vermenigvuldigen = sha1($_POST['vermenigvuldigen']);
    $x = $_POST['vermex'];
    
    
    if($vermenigvuldigen > 225){ echo'Fout'; }
    elseif($x != $vermenigvuldigen){ echo'Niet goed vermenigvuldigd'; }
    else{ echo'Goed'; }}
    ?> <br /><br />
    Door Dennis de Vries
    <br /><br />
    </body>
    </html>
    Toon Meer

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!

Maak een account aan Login

ICT Nieuws

  • Quanscient ontvangt €10M om AI- en kwantum-native hardware engineering te bevorderen - Tech.eu

    ICTscripters 27 mei 2026 om 12:03
  • Datalek bij leverancier Canvas - Universiteit van Amsterdam

    ICTscripters 10 mei 2026 om 12:03
  • Data privacy in 2026: Hoe de naleving van GDPR verandert

    ICTscripters 8 mei 2026 om 12:16

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37

Gebruikers die dit topic bekijken

  • 1 Gasten
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design