Captcha probleem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ervaren PHP ontwikkelaar

Functie Jij als PHP ontwikkelaar komt te werken in een team van 4 andere PHP ontwikkelaars. Je zult je voornamelijk bezig houden met: – Het ontwikkelen van nieuwe features – Doorontwikkelen van de API – Nadenken over de technische infrastructuur – Datakwaliteit Samen met het team ben jij verantwoordelijk voor de verdere ontwikkeling van de software en om de positie als marktleider in Europa te behouden. Ze werken volgens SCRUM in 2 wekelijkse sprints, werken met Jira voor alle tickets en communiceren veel via Slack. Eisen • Minimaal 3 jaar ervaring als back end developer • Je hebt affiniteit met

Bekijk vacature »

Programmeur / Developer

Voor een familiebedrijf in Doetinchem, actief in de machinebouw voor de food-sector, zijn wij op zoek naar een programmeur / developer. In deze functie ben je werkzaam in een team van 5 medewerkers. Je werkzaamheden bestaan onder andere uit het verhelderen van requirements vanuit de opdrachtgever, de klant en de afdeling ontwikkeling. Je verricht haalbaarheidsstudies en werkt specificaties uit die je afstemt met de opdrachtgever. Je ontwerpt design in software en stemt af met je collega's. De huidige vision-systemen zijn geschreven in C software, welke draait op een CUDA platform. Je schrijft en codeert software en zal gaan testdraaien. Tot

Bekijk vacature »

Node.js developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

Software developer

Functie Momenteel zijn ze op zoek naar een Software developer die, veelal fullstack, mee gaat werken aan de ontwikkeling van de producten en zo helpt aan de uitvoering van hun ontwikkelprojecten. Je komt te werken binnen hun development team bestaande uit 6 ontwikkelaars. Ze staan zowel open voor meer junior als medior/senior developers. Je kunt snel veel verantwoordelijkheid krijgen en doorgroeien binnen het bedrijf. Bovendien ben je betrokken bij het bepalen van de product roadmap en de inbreng van (nieuwe) technologieën. De applicaties waaraan je werk worden gebruikt op onderwijsinstellingen door heel Nederland. De tech-stack bestaat voornamelijk uit Laravel (PHP),

Bekijk vacature »

Lead Front-end developer

Functie Hun huidige applicatie worden ontwikkeld in o.a. React, Redux, TypeScript. Ze werken graag met de nieuwste technieken en tooling en zoeken ook developers die hier proactief op zoek naar gaan. Als senior/lead developer ben je een kartrekker in het team. Naast het meedenken over bijvoorbeeld de architectuur of toepassing van nieuwe technieken krijg je ook veel tijd om de meer junior (front-end) developers te begeleiden. Zo kun je bijvoorbeeld 1 dag in de week met 2 collega’s bezig zijn om samen met hen te kijken naar hun ontwikkeling, doelstellingen en uiteraard de gewenste begeleiding hierin. Hiernaast sta je als

Bekijk vacature »

Starter/junior Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als starter/junior developer zul je direct begeleid worden door een senior uit het team. Het is van belang dat

Bekijk vacature »

(Junior) Back-end Ontwikkelaar

Functie omschrijving We are looking for a dutch native speaker Altijd al willen werken bij een organisatie, die maatwerk applicaties bouwt, die echt impact hebben in de maatschappij? Dit is je kans. Voor een kleine organisatie in de regio van Eindhoven ben ik op zoek naar een C# Ontwikkelaar. Jij gaat aan de slag met de ontwikkeling van maatwerk software en applicaties. Deze organisatie werkt voor grote organisaties in Nederland, maar ook voor het MKB. De projecten waar je aan gaat werken zijn erg divers, waardoor je werk uitdagend blijft en je erg veel kan leren. Verder ga je aan

Bekijk vacature »

C# .NET Backend Developer HBO Javascript

Samengevat: Deze werkgever is een professionele speler op gebied van IT en E-Commerce. Wil jij werken voor een e-commerce platform? Heb je ervaring met C#, Javascript en Scrum? Vaste baan: C# .NET Developer Backend E-Commerce 3.400 - 4.500 Backend Developer Wij ontwikkelen software voor E-Commerce toepassingen. Ons eigen Content Management systeem biedt een integrale oplossing met diverse ERP software. Onze systemen zijn vaak complex en omvangrijk en draaien bij grote organisaties. Maar ook kleine ondernemingen hebben steeds vaker behoefte aan een vlekkeloos werkende E-Commerce oplossing. Zij bieden een uitdagende werkomgeving met gezellige collega's. Je krijgt veel vrijheid en er is

Bekijk vacature »

.Net ontwikkelaars voor de zorgsector

Bedrijfsomschrijving Voor onze klant in de omgeving van Zwolle zijn wij op zoek naar een ervaren .Net ontwikkelaar, bij voorkeur met ervaring binnen de belangrijkste sector van Nederland, namelijk: de zorgsector. Deze internationale organisatie ontwikkelt software voor de zorgsector. Er werken zo'n 25 medewerkers hard aan een oplossing die gebruikt wordt door heel Nederland. Er heerst een informele sfeer waarbij er altijd ruimte is voor een grapje. Je collega's zijn stuk voor stuk sterke ontwikkelaars vanuit verschillende achtergronden en met verschillende leeftijden. Je komt hier terecht in een organisatie die zich hard inzet om de zorgsector te verbeteren. De mogelijkheden

Bekijk vacature »

Junior .NET developer

Functie Ons programma is voor afgestudeerde enthousiastelingen die het als een uitdaging zien om met een klein dynamisch team bij de grootste bedrijven van Nederland aan de slag te gaan. Tijdens jouw dienstverband word jij begeleid door een talent manager. Het ontwikkelen van jouw talent staat hierbij centraal. Het programma doorloop je met een team van circa 8 Mede- trainees. De eerste maand start je met een fulltime inhouse opleiding. Deze staat geheel in het teken van de werkzaamheden die jij verder in het programma zult uitvoeren. Na deze opleidingsmaand ga je aan de slag in een dynamische omgeving bij

Bekijk vacature »

Medior Java developer

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Web Application Developer

Dit ga je doen Samen met het team werk je aan de visualisatie functionaliteiten en hoe dit gebruikt kan worden in een operationele setting; Het ontwerpen, ontwikkelen, onderhouden en leveren van support betreft het Warehouse Management Systeem en de bijbehorende web visualisaties; Je gebruikt hierbijde tools WebGL en ASP.net; Het meewerken in implementatieprojecten; Het leveren van Go-Live Support; Sparren met jouw Amerikaanse collega's. Hier ga je werken Voor een internationale organisatie in de transport zijn wij momenteel op zoek naar een Web Application Developer. Ze zijn wereldwijd de grootste speler en lopen voorop met het automatiseren van alle processen van

Bekijk vacature »

Medior/senior Fullstack developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

UX Writer (m/v/d)

UX Writer (m/v/d) Everything we do, starts with you. Together with you, we build the most human-centric fintech. We have the ambition to create the next. And - with Bertelsmann - a strong foundation to start from. Let’s make it new – for society and for yourself. Wij zijn op zoek naar een UX Writer (m/v/d) Fulltime - Op ons kantoor in Amsterdam of Heerenveen / deels vanuit huis Als UX Writer bij Riverty hou jij je bezig met onze strategie om daar te zijn waar onze gebruikers zijn en op de manier waarop zij ons nodig hebben, terwijl wij

Bekijk vacature »

Senior Organisatieontwikkelaar

Als Organisatieontwikkelaar zorg je ervoor dat we in het magazijn van Coolblue altijd vooruit voetballen op het gebied Medewerker en Organisatie Ontwikkeling. Zo draag je bij aan een toekomstbestendig magazijn waar we klanten én medewerkers elke dag blijven verwonderen. Wat doe je als Senior Organisatieontwikkelaar bij Coolblue? Als Organisatieontwikkelaar werk je voor het magazijn van Coolblue. Je krijgt er energie van om continue te bouwen aan een toekomstbestendige organisatie. Dat doe je samen met 17 collega's in het HR-team, ieder met een eigen specialisme. Je werkt graag zelfstandig en je weet snel je weg te vinden als verandermanager. Ook ben

Bekijk vacature »
Jasper DS

Jasper DS

14/07/2010 21:10:23
Quote Anchor link
Beste phpers,

ik heb een tutje gevolgd over captcha's en dan aangepast in mijn eigen formulier. Ik denk dat het fout loopt bij het checken of de captcha juist is of niet.

Hieronder de code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
$error
= array();
    if(!preg_match("/^[-_0-9a-z]{2,}$/i", $_POST['naam'])) {
        $error[] = 'Een naam mag slechts alfanummerieke tekens bevatten (a-z, 0-9), underscore (_) of liggend streepje (-).';
    }

// Start de Session voor de Captcha code
session_start();
 
// Controleer of de ingevulde Captcha code overeen komt met de Captcha code zoals die weergegeven werd.
// Als de code overeen komt ga door en geef geen Error waarschuwing (0).

if (md5($_POST['AntiSpam'])  != $_SESSION['randomnr2']){
$error[] = 'Vul de captcha correct in.';
}

 
    $fouten = sizeof($error); // aantal errors tellen
    if($fouten != 0) { // Er is minstens 1 error
        echo 'Het bericht kon niet worden verzonden omwille van de volgende reden(en):';
        echo '<ul>';
            for($i = 0; $i < $fouten; $i++) {
                echo '<li>'.$error[$i].'</li>';
            }

        echo '</ul>';

?>



captcha.php


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<?php
// Start de Session die nodig is om de Captcha code te gebruiken.
session_start();
 
// Lijst met alle letters en cijfers die gebruikt worden om de Captcha aan te maken.
// Ik heb ervoor gekozen om een aantal letters en cijfers weg te laten aangezien deze veel op elkaar lijken (1, i).

$Characters = '23456789abcdefghjklmnpqrstuvwxyz';
 
// Aantal tekens dat gebruikt wordt om de Captcha aan te maken.
// Ik heb het aantal ingesteld op 5 , jasper heeft het veranderd naar 7

$chars = 7;
 
// Stel hieronder de afmetingen voor de Captcha afbeelding in.
// Ik heb gekozen voor 150 pixels breed bij 50 pixels hoog.

$Width = 200;
$Height = 40;
 
// Maak de Captcha code aan. De code hieronder kiest willekeurig het aantal tekens uit dat is vastgelegd.
// In het geval van dit voorbeeld worden er 5 willekeurige tekens gekozen uit de lijst $Characters

$i = 0;
while ($i < $chars)
{

$randomnr .= substr($Characters, mt_rand(0, strlen($Characters)-1), 1);
$i++;
}

 
// Schrijf de aangemaakte Captcha code weg in een Session.
// Ik versleutel de code met een md5 hash zodat de code niet zomaar uit de Session te lezen is.

$_SESSION['randomnr2'] = md5($randomnr);
 
// Start met het aanmaken van de afbeelding.
$im = imagecreatetruecolor($Width, $Height);
 
// Bepaal de kleuren die je wilt gebruiken. Deze Captcha maakt gebruik van 3 kleuren.
// Kleur 1: $front is de Captcha Code waar het uitenidelijk om draait.
// Kleur 2: $shadow is de schaduw die ik achter de Captcha Code schrijf.
// Kleur 3: $background is de achtergrond kleur van de gehele Captcha afbeelding.

$front = imagecolorallocate($im, 255, 255, 255);
$shadow = imagecolorallocate($im, 128, 128, 255);
$background = imagecolorallocate($im, 6, 51, 125);
 
// Vul de aangemaakt afbeelding met de hierboven ingestelde achtergrond kleur.
imagefilledrectangle($im, 0, 0, $Width, $Height, $background);
 
// Stel het True Type Font in dat je wilt gaan gebruiken.
// Zorg ervoor dat je de juiste locatie van je .ttf bestand invult.
// Voor deze Captcha maak ik gebruik van Artbrush.ttf

$font = 'arial.ttf';
 
// Stel de max. en min. hoek in waarmee je de Captcha weg wilt schrijven. Gebruik hiervoor een getal tussen de 0 en 15.
// Deze hoeken worden hierna willekeurig bepaalt aan de hand van de ingestelde max. en min. waarden.
// $angle1 is de hoek waarin de Schaduw van de Captcha code wordt weergegeven.
// $angle2 is de hoek waarin de Captcha code zelf wordt weergegeven.

$angle1 = rand(-12, 12);
$angle2 = rand(-12, 12);
 
// Schrijf de Schaduw van de Captcha op de afbeelding.
// Het eerste getal (hier 25) is de grootte van de tekens die weggeschreven worden.
// Het tweede getal (hier 20) is de afstand in pixels dat de tekens van de rechterkant af weggeschreven worden.
// Het derde getal (hier 28) is de afstand in pixels dat de tekens van de bovenkant af weggeschreven worden.

imagettftext($im, 25, $angle1, 20, 28, $shadow, $font, $randomnr);
 
// Schrijf de Captcha Code op de afbeelding.
// Het eerste getal (hier 20) is de grootte van de tekens die weggeschreven worden.
// Het tweede getal (hier 30) is de afstand in pixels dat de tekens van de rechterkant af weggeschreven worden.
// Het derde getal (hier 32) is de afstand in pixels dat de tekens van de bovenkant af weggeschreven worden.

imagettftext($im, 20, $angle2, 30, 32, $front, $font, $randomnr);
 
// Voorkom dat de afbeelding ge-cached wordt door headers te versturen.
header("Expires: Wed, 1 Jan 1997 00:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
 
// Verzend de aangemaakte afbeelding naar de browser.
header ("Content-type: image/gif");
imagegif($im);
imagedestroy($im);
?>



iemand een idee wat ik fout doe? ;s
 
PHP hulp

PHP hulp

22/12/2024 19:07:19
 
Bas IJzelendoorn

Bas IJzelendoorn

14/07/2010 21:26:16
Quote Anchor link
heb je captcha.php geinclude? dat zie ik namelijk nergens terug. en je arial.ttf in je directory geplaatst?

Anders: wat krijg je te zien wat gaat er fout? zet php error report aan
Gewijzigd op 14/07/2010 21:27:58 door Bas IJzelendoorn
 
Jasper DS

Jasper DS

14/07/2010 21:31:45
Quote Anchor link
arial.tff is er en ik heb even getest door captcha.php te include maar dan krijg ik verchillende errors. je kan het bekijken op http://jasperdesmet.bplaced.net/index.php
 
Roel -

Roel -

14/07/2010 21:43:01
Quote Anchor link
Het lijkt erop dat je al tekst heb verstuurd naar de browser (zoals echo of HTML).
Ik zou overigens regel 70 t/m 74 weghalen, daar zie ik het nut namelijk niet van in.
 
Jasper DS

Jasper DS

14/07/2010 22:32:10
Quote Anchor link
Roel van de Water op 14/07/2010 21:43:01:
Het lijkt erop dat je al tekst heb verstuurd naar de browser (zoals echo of HTML).
Ik zou overigens regel 70 t/m 74 weghalen, daar zie ik het nut namelijk niet van in.


volgens mij zorgt dat ervoor dat de info niet door bots opgehaald kan worden?
 
Jelmer -

Jelmer -

14/07/2010 22:34:58
Quote Anchor link
Het zorgt ervoor dat de browser niet hetzelfde plaatje (met de oude code) twee keer gebruikt, omdat 'ie denkt dat 'ie dat plaatje al had.

edit: maar je captcha werkt toch al? http://jasperdesmet.bplaced.net/captcha.php
Je hoeft dat script natuurlijk niet te includen op index.php, want het script genereert alleen het plaatje. In index.php hoef je alleen maar naar het plaatje te verwijzen, zodat de browser dat apart ophaalt.
Gewijzigd op 14/07/2010 22:37:22 door Jelmer -
 
Mick ForSure

Mick ForSure

15/07/2010 09:48:58
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<img src="catptcha.php" alt="" />


;)
 
Jasper DS

Jasper DS

15/07/2010 13:28:31
Quote Anchor link
dat had ik al gedaan.

<tr><td><img src="captcha.php"></td>
<td><input class="input" type="text" name="captcha"></td></tr>
<tr>

de fout zit bij het checken of het input veld van de captcha gelijk is aan de captcha wat ik nu op deze manier doe:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
// Start de Session voor de Captcha code
session_start();
 
// Controleer of de ingevulde Captcha code overeen komt met de Captcha code zoals die weergegeven werd.
// Als de code overeen komt ga door en geef geen Error waarschuwing (0).

if (md5($_POST['captcha'])  != $_SESSION['randomnr2']){
$error[] = 'Vul de captcha correct in.';
}

?>


de output van de error heb ik er niet bij gezet maar dit is de check en hier loopt het fout.

de error is:

Warning: session_start() [function.session-start]: Cannot send session cache limiter

edit: ik heb even de volledige code er bij gezet dan is het misschien duidelijker:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?php
if(!isset($_POST['Submit'])) {
<
form name="form1" method="post" action="">
<
table  border="0">
   <
h2>Reageer</h2>
   <
tr>
      <
td>naam:</td>
      <
td><input name="naam" type="text" id="naam" size="35"></td>
    <
/tr>
      <
td>E-mailadres:</td>
      <
td><input name="email" type="text" id="email" size="35"></td>
    <
/tr>
    <
tr>
    <
tr>
      <
td>bericht:</td>
      <
td><textarea name="bericht" id="bericht" size="35"></textarea></td>
    <
/tr>
    <
tr><td><img src="captcha.php"></td>  
<
td><input class="input" type="text" name="captcha"></td></tr>
    <
tr>
      <
td colspan="2"><input type="submit" name="Submit" value="verzenden">
      <
input type="reset" name="Reset" value="Wissen"></td>
    <
/tr>
  <
/table>
 

<
/form>
 }
  else {

    $error = array();
    if($_POST['email'] == "") {
        $error[] = 'Er is geen geldig e-mailadres ingevuld.';
    }

    if(!check_email($_POST['email'])) {
        $error[] = 'Er is geen geldig e-mailadres ingevuld.';
    }

    if($_POST['naam'] == "") {
        $error[] = 'Er is geen naam ingevuld.';
    }

    if(!preg_match("/^[-_0-9a-z]{2,}$/i", $_POST['naam'])) {
        $error[] = 'Een naam mag slechts alfanummerieke tekens bevatten (a-z, 0-9), underscore (_) of liggend streepje (-).';
    }

// Start de Session voor de Captcha code
session_start();
 
// Controleer of de ingevulde Captcha code overeen komt met de Captcha code zoals die weergegeven werd.
// Als de code overeen komt ga door en geef geen Error waarschuwing (0).

if (md5($_POST['captcha'])  != $_SESSION['randomnr2']){
$error[] = 'Vul de captcha correct in.';
}

 
    $fouten = sizeof($error); // aantal errors tellen
    if($fouten != 0) { // Er is minstens 1 error
        echo 'Het bericht kon niet worden verzonden omwille van de volgende reden(en):';
        echo '<ul>';
            for($i = 0; $i < $fouten; $i++) {
                echo '<li>'.$error[$i].'</li>';
            }

        echo '</ul>';
    }
else {
    
        mysql_query("INSERT INTO reageer_index (naam,email,bericht) VALUES ('".$_POST['naam']."','".($_POST['email'])."','".$_POST['bericht']."')");
     }
}

 ?>



edit: Het script werkt nu maar er komt nog altijd een foutmelding op door de session(). Als ik de session() dan weghaal werkt het script natuurlijk niet meer dus ik moet zorgen dat de session() kan blijven zonder foutmelding
Gewijzigd op 15/07/2010 13:59:58 door Jasper DS
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.