Captcha probleem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Back-End Web Developer

Als Back-End Web Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn. Wat doe je als Back-End Web Developer bij Coolblue? Als Back-End Web Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Als backend developer weet je de weg in PHP, kan je in Typescript een microservice op zetten of ben je bereid om dit te leren. Ook Web Backend Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen PHP

Bekijk vacature »

.NET Developer gezocht!

Functie omschrijving Wij zijn op zoek naar een .NET Developer! Wil jij werken voor een internationaal bedrijf waar je legio mogelijkheden krijgt als Software Ontwikkelaar? Grijp nu je kans en kijk snel of jouw vaardigheden aansluiten bij onderstaand profiel! Je kunt een uitdagende rol gaan vervullen als .NET Developer binnen een internationaal bedrijf dat gevestigd is in omgeving Bergen. Dit bedrijf is zeer vooruitstrevend en verricht betekenisvol werk. Binnen dit bedrijf wordt gewerkt aan de productie en ontwikkeling van medische middelen. Als .NET Developer ga jij je bezig houden met het volgende: Je wordt betrokken bij alle fasen van software

Bekijk vacature »

PHP Developer

Als PHP Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn. Wat doe je als PHP Developer bij Coolblue? Als PHP Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Hoewel je een PHP Developer bent, sta je open om C# of Typescript in te zetten of te leren. Ook PHP Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen pure PHP code schrijven. Samenwerken met de klantreiziger om onze klanten

Bekijk vacature »

Full stack .NET developer Microsoft 365

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

Back-end Developer

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een gewaardeerde werkgever in regio Oosterhout zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je brengt de aanpassingssuggesties van klanten in kaart, om

Bekijk vacature »

Senior Full Stack developer

Bedrijfsomschrijving tbd Functieomschrijving Full Stack Java Development bij Randstad Groep Nederland (HQ) Er is een vacature in het Corporate Client Solutions (CCS) team. Dit team is met een ander team net begonnen aan het project ‘Grip op Inhuur’. Het doel van dit project is de tevredenheid van onze leveranciers te verhogen en de efficiëntie van onze administratie te verbeteren. Onderdeel daarvan is een ‘Mijn-omgeving’ voor ZZP’ers en leveranciers. Naast dit nieuwe project werkt het team ook aan het onderhoud en verbeteren van een digitaal vacature management systeem waarmee dagelijks vele vacatures worden voorzien. Het team ontwikkelt zo veel mogelijk zelf

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

.NET Developer Azure

Dit ga je doen Het ontwerpen en bouwen van diverse applicaties (C#, ASP.NET, MVC); Het ontwikkelen van Webservices (WCF); Het meewerken aan de transitie naar Azure; Het samenwerken met collega's binnen een Scrumteam en meedenken over de User Stories; Het bouwen van unittesten; Meedenken over nieuwe tooling, ontwikkelingen en technologieën in de markt. Hier ga je werken Je komt te werken bij een organisatie die verantwoordelijk is voor de ontwikkeling van verschillende portalen. Deze portalen worden gebruikt door diverse partijen en jouw taak is om ervoor te zorgen dat deze optimaal functioneren. Je wordt onderdeel van een Scrumteam en werkt

Bekijk vacature »

Full-stack Developer

As a Full-stack developer at KUBUS, you will develop the (web)applications and services of BIMcollab. You will work on both the front- and back-end. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact in the market, but small enough that as an individual developer you can have an impact and really make a difference. Our development team consists of over 40 developers, testers, scrum masters and product owners, divided over

Bekijk vacature »

Junior .NET developer

Functie Wij zijn bezig met het ontwikkelen van een nieuw product en wij hebben jouw hulp hierbij nodig! Als junior .NET ontwikkelaar krijg jij de kans om samen met ons deze nieuwe uitdaging aan te gaan! Momenteel bestaat ons team uit drie interim Software Engineers. Twee hiervan zijn zeer ervaren .NET specialisten die inmiddels hun strepen in dit vakgebied al hebben behaald. Ook hebben wij een junior als onderdeel van ons team die zich op dit moment nog bezig houdt met de Front-end (Angular/TypeScript), maar zich nu ook meer gaat verdiepen in de backend. Wij willen ons team graag verder

Bekijk vacature »

C#.NET ontwikkelaar

Functie omschrijving Voor een softwarebedrijf in de omgeving van Veghel zijn we op zoek naar een C# developer. Word jij blij van ontwikkelen in C# en .NET? Lees dan snel verder! Jouw werkzaamheden zullen er als volgt uit gaan zien: Op basis van de wensen van de klant ga je samen met je collega's ga je op zoek naar de juiste oplossingen en je gaat dit uitwerken tot een mooi eindproduct. Je bouwt webshops, webapplicaties en websites, dit doe je door middel van ASP.NET, MVC Framework en C#. Je zorgt voor de optimalisering van bestaande software en de automatisering van

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET Core developer wordt jij onderdeel van ons team met drie breed ontwikkelde software engineers en een flexibele schil met zes ervaren freelancers. Jij gaat mee in de visie van onze organisatie om als IoT partner in deze branche specifieke markt “het” platform te blijven innoveren en deze ook steeds slimmer te maken. Wij hopen dan ook zeker dit in de toekomst te kunnen realiseren met bijvoorbeeld Artificial Intelligence. De architectuur van ons platform is opgemaakt uit een deel eigen protocol, een interface laag en een laag welke de protocollen van derde partijen vertaald naar het eigen

Bekijk vacature »

Als PHP developer (Symfony) bijdragen aan betere z

Functie Als Medior/Senior PHP developer wordt er een mate van zelfstandigheid verwacht, maar ook dat je goed in een team kunt opereren waar kennis wordt gedeeld en er bijvoorbeeld codereviews plaatsvinden. Kwaliteit staat voorop, mede hierom werken ze bijvoorbeeld zonder echte deadlines in hun sprints. De SaaS-applicatie wordt volledig ontwikkeld in PHP en Symfony. De module bestaat uit een stuk informatie verrijking en intelligentie wat resulteert in een medische check. De logica wordt daarom in de code geïntrigeerd. Je bent onder andere bezig met complexe databases waar meer dan 80.000 medicijnen op verschillende niveaus in staan, die maandelijks worden geactualiseerd.

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Ridderkerk zijn wij op zoek naar versterking voor op de afdeling Software Development! Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met

Bekijk vacature »

VB.NET developer

Functie Het development team waar jij in terecht komt bestaat uit twee ervaren software developers. De directeur/eigenaar is tevens één van deze developers. Jij werkt direct samen met jouw werkgever en kan dan ook veel kennis en ervaring bij dit bedrijf op doen. Als team zijn jullie verantwoordelijk voor de kantoorapplicatie die deze organisatie aanbied in een niche markt. Het team is op dit moment actief bezig met een migratie waarbij het eindstation eindigt in een C# .NET omgeving. Echter is een deel van de software al geschreven in C# .NET. Hierbij is gebruik gemaakt van C# .NET, CSS, HTML,

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

26/04/2024 01:16:01
 
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.