Contact formulier intregeren

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Softwareontwikkelaar Cleopatra

Functieomschrijving Voor de gemeente Amsterdam zijn wij op zoek naar een softwareontwikkelaar Cleopatra. De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van brom- en snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie. Functie

Bekijk vacature »

C# developer

Functie omschrijving We are looking for a dutch native speaker Ik ben op zoek naar een back-end developer, die met name kennis & ervaring heeft van de programmeertaal C#. Jij gaat aan de slag bij een topspeler in de logistieke sector, die zich behalve met logistiek, ook bezig houdt met softwareontwikkeling. Welke taken komen hierbij kijken? Je gaat desktop- en webapplicaties onderhouden en optimaliseren, waarin je werkt met o.a. C#, ASP.NET, SQL Server en T-SQL. Je hebt regelmatig klantcontact om de wensen in kaart te brengen en te evalueren over de huidige draaiende applicaties. Je implementeert nieuwe functionaliteiten toe aan

Bekijk vacature »

SQL Database ontwikkelaar

Functie omschrijving Wil jij meewerken aan het creëren van slimme software om magazijnen als een geoliede machine te laten lopen? Wij zoeken een zorgvuldig persoon, iemand die niet snel de hand omdraait voor complexe algoritmes. Denk jij dat jij de SQL ontwikkelaar bent die wij zoeken? Lees snel verder en wie weet zitten we binnenkort samen aan tafel! Jouw werkzaamheden zullen er als volgt uitzien: Je houdt je bezig met het ontwerpen en ontwikkelen van MS SQL server databases, dit doe je met T-SQL als programmeer laag. Je gaat aan high-end software oplossingen werken, dit doe je voor de optimalisatie

Bekijk vacature »

C# developer

Functie Als ervaren Software Engineer wordt jij verantwoordelijk voor het bedenken en ontwikkelen van technische (maatwerk) oplossingen voor onze klanten en dit samen met de klant af te stemmen. Jij wordt o.a. verantwoordelijk voor de doorontwikkeling het software pakket welke voor ons enorm belangrijk is. Dit pakket zorgt er namelijk voor dat wij complete productielijnen kunnen aansturen en monitoren. Daarnaast heb jij actief contact met onze hoofdvestiging om het software achter een van onze systemen te verbeteren en te herschrijven. Momenteel zijn onze C# applicaties geschreven met o.a. Winforms. Echter hebben wij de actieve ambitie om dit te gaan herschrijven

Bekijk vacature »

Medior Java developer (fullstack)

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 »

Front-end Developer

Functie omschrijving Wij zijn op zoek naar een Front-end Developer! Als Front-end Developer binnen dit softwarebedrijf ga je de frontends voor zowel je eigen interne projecten als die voor klanten opzetten, onderhouden en uitbreiden. Je zet ideeën om naar mooie successen voor de klanten. Dat is in een notendop wat je gaat doen! Wat kun je verwachten? Je werkt aan de doorontwikkeling van bestaande maatwerkapplicaties. Bijvoorbeeld wanneer de klant de applicatie wil uitbreiden met een nieuwe feature; Samen met het team van backenders en desginers zet je nieuwe ideeën van klanten om naar mooie oplossingen; Je werkt met verschillende frameworks.

Bekijk vacature »

.NET developer

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 »

SQL Database Ontwikkelaar

Functie omschrijving Kan jij goed overweg met complexe algoritmes en het schrijven van procedures in T-SQL? Heb jij al wat ervaring opgedaan met SQL en vind je het tijd voor de volgende stap? Lees dan snel verder! Dit software bedrijf, gespecialiseerd in de ontwikkeling van logistieke software, is op zoek naar een ervaren SQL database developer. Jouw werkzaamheden zullen onder andere bestaan uit: Je houdt je bezig met het ontwerp en de ontwikkeling van MS SQL server databases, dit doe je met T-SQL als programmeer laag. De begeleiding van projecten van A tot Z, je zult aansluiten bij meetings met

Bekijk vacature »

Front-end PHP Developer

Dit ga je doen Bouwen van de frontend van een nieuwe applicaties; Verbeteren van de user experience; Opstellen van een style guide; Schakelen met collega developers over de te bouwen oplossing; Je speelt een belangrijke rol in het neerzetten van het nieuwe systeem; Werken met o.a. Symfony 6, API Platform, Twig, Javascript, Redis Automatiseren van processen; Koppelen van verschillende functionaliteiten; Unit tests, integration tests, end-to-end tests; In de toekomst ga je nog werken aan andere projecten. Hier ga je werken Voor onze vaste opdrachtgever in de regio Breda zijn wij op zoek naar een Frontend Developer. Het betreft een organisatie

Bekijk vacature »

Back-end Developer

Functieomschrijving Heb jij kort geleden je HBO ICT Informatica diploma in ontvangst mogen nemen? Of heb je een aantal jaar ervaring als Software Developer en ben je klaar voor een nieuw hoofdstuk in jouw carrière? Voor een gewaardeerde werkgever in de regio van Goirle zijn wij op zoek naar een junior/medior Back-end Developer met affiniteit met MS Acess. Samen met een vooruitstrevend team ben je verantwoordelijk voor het ontwikkelen van maatwerk software voor hun klanten. Je hebt kennis of ervaring van SQL en affiniteit met MS Acess. Je bent klantvriendelijk en flexibel ingesteld en vindt het leuk om klanten te

Bekijk vacature »

Software Developer (Junior functie)

Functieomschrijving Wij zijn op zoek naar een Software Developer! Sta jij in de startblokken om je carrière te beginnen en kan je niet wachten om toffe software te gaan ontwikkelen? Kortom, ben je onlangs afgestudeerd of sta je op het punt om je papiertje te behalen? Voor een IT dienstverlener dat gespecialiseerd is in Microsoft technologie zijn wij op zoek naar C#.NET Developers. Het bedrijf heeft meerdere klanten in regio Utrecht waar je permanent kan komen te werken. Kom je liever te werken bij een klein softwarebedrijf of bij een groot consultancy bureau? Dat is helemaal aan jou de keuze!

Bekijk vacature »

Front-end React developer

Functie Het frontend team bestaat momenteel uit 4 dedicated front-enders en is hard aan het groeien! Ook werken er diverse designers waar je veel mee schakelt. Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren, jij bent hierin de schakel tussen de eindgebruiker en de slimme backend. Je werkt in het frontend team samen met de backend teams en product owners om te zorgen dat onze applicaties een fijne gebruikerservaring opleveren. Ze werken o.a. met: React, Atomic design, Styled components, JavaScript / TypeScript, NPM, Webpack Blade templates, HTML, SCSS, Git flow. Eisen • HBO

Bekijk vacature »

Full stack developer

Functie Binnen een ontzettend stimulerende werkomgeving kom jij te werken in een software team van 14 developers. Met ontzettend stimulerend bedoel ik een modern pand, wat voorzien is van alle nodige soft- en hardware, zodat jij jouw werk goed kan uitvoeren. Daarnaast zitten ze in een bos, waardoor je in een groene omgeving rustig kunt werken. Het team bestaat uit front end, back end en full stack developers. Jij krijgt dus de keuze hier waar jij jezelf het liefst op zou richten, maar de voorkeur gaat uit naar back end. Er wordt hier Scrum (agile) gewerkt in multidisciplinaire teams met

Bekijk vacature »

Java Front-end Developer

Dit ga je doen Ontwikkelen van nieuwe functionaliteiten in Java met tools als Springboot, MS SQL Server (T-SQL) en JavaScript; Het onderhouden van de (web-)applicaties binnen een complexe omgeving; Werken aan de migratie van een monolithisch systeem naar een architectuur gebaseerd op Kubernetes; Code reviews met collega's en actieve kennisuitdelingsessies voeren; Het uitvoeren van unit- en systeemtests Experimenteren met nieuwe tools en technieken. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen

Bekijk vacature »

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

16/07/2015 21:38:55
Quote Anchor link
Ik heb dus een contact formulier op de homepage waar mensen hun naam kunnen invullen en email adres etc.
Ik wil nu van dit contact formulier nog een pagina maken die de klant krijgt wanneer deze is ingelogt.
Dit doe ik gewoon via contact2.php
Hij hoeft dan alleen de titel en het bericht in te vullen.
Hoe zorg ik dan dat de email en de gebruikersnaam van de klant meegezonden wordt in de email?
 
PHP hulp

PHP hulp

04/05/2024 06:02:22
 
Eddy E

Eddy E

16/07/2015 21:40:41
Quote Anchor link
Ik zou dezelfde pagina doen, maar zodra ze ingelogd zijn alvast hun naam invullen.
En eventueel een <input type="hidden"> er van maken. Dan zien ze ze niet, maar is het er wel. Zo houd je 1 script.
 
- SanThe -

- SanThe -

16/07/2015 21:46:58
Quote Anchor link
Wanneer een klant is ingelogd dan weet je toch zijn/haar emailadres etc. al.
 

17/07/2015 18:55:19
Quote Anchor link
@Eddy.

Dit gaat nogal moeilijk want het zijn verplichtte velden.

@SanThe

Klopt, en deze gegevens kan ik prima op de site laten zien, nu alleen nog zonder dat de klant het zelf in hoeft te vullen.

Weet niet of het hier mag, maar zou iemand hiernaar willen kijken?

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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
<?php
////////////////////////////////////////////////
/// formherhaling
/// xhtml compatible
///////////////////////////////////////////

//output buffering aanzetten om leuke errors te verhelpen/voorkomen

ob_start();

//headers alvast instellen

header("Expires: Mon, 26 Jul 1997 05: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");


/////////////////////////////////////////////////////
/// Variablen die ingesteld moeten worden
/////////////////////////////////////////////////////

// Maanden, hoef je eigen niks aan te wijzigen, tenzij je
// natuurlijk de maanden in het engels wil ontvangen

$SETTINGS['maanden']                       = array(
'01' => 'Januari',
'02' => 'Februari',
'03' => 'Maart',
'04' => 'April',
'05' => 'Mei',
'06' => 'Juni',
'07' => 'Juli',
'08' => 'Augustus',
'09' => 'September',
'10' => 'Oktober',
'11' => 'November',
'12' => 'December'
);

// email adres(sen) waar het naartoe moet
// naam_van_persoon => email adres

$SETTINGS['emails'] = array('Helpdesk'        => '[email protected]',
                            );


//standaard persoon die aangekruist staat (email adres)
$SETTINGS['stdmail'] = 'helpdesk';

//onderwerpen gebruiken?
//true / false

$SETTINGS['do_onderwerpen'] = true;

//welke onderwerpen?
// id => onderwerp

$SETTINGS['onderwerpen'] = array(1  => 'Suggestie',
                                 2  => 'Klacht',
                                 3  => 'Ideëen',
                                 4  => 'Anders',
                                 );


//wat is het standaard onderwerp
// $SETTINGS['onderwerpen'][ id_van onderwerp ]

$SETTINGS['stdsub'] = $SETTINGS['onderwerpen'][4];

// html email of plain text? kies uit:
// text/html - text/plain

$SETTINGS['mime'] = 'text/html';

//datum formaat volgens php's date() functie
$SETTINGS['datum_formaat'] = 'd-m-Y H:i:s';

//tijdzone waar je in zit
$SETTINGS['timezone'] = 1;

//STA, Server Time Adjustment in minuten. Zegt het al...
$SETTINGS['adjustment'] = 0;

//input: minimale en maximale string lengte van naam?
$SETTINGS['naam_min'] = 3;
$SETTINGS['naam_max'] = 20;

//input: minimale en maximale string lengte van bedrijf?
$SETTINGS['bedrijf_min'] = 3;
$SETTINGS['bedrijf_max'] = 20;

//input: minimale en maximale string lengte van telefoon?
$SETTINGS['telefoon_min'] = 3;
$SETTINGS['telefoon_max'] = 20;

//input: minimale en maximale string lengte van titel?
$SETTINGS['titel_min'] = 4;
$SETTINGS['titel_max'] = 40;

//input: minimale en maximale string lengte van titel?
$SETTINGS['email_min'] = 4;
$SETTINGS['email_max'] = 40;

//input: minimale en maximale string lengte van bericht? maximale woord lengte?
$SETTINGS['bericht_min'] = 20;
$SETTINGS['bericht_max'] = 10000;
$SETTINGS['bericht_wmx'] = 50;

//bericht dat weergegeven wordt bovenaan het formulier, html ingeschakelt
//hoeft er niks? laat dan &nbsp; staan

$SETTINGS['bericht_top'] = '<div align="left"><h2></h2></div>';

//bericht dat weergegeven wordt nadat het emailtje successvol is verzonden
$SETTINGS['bericht_suc']  = 'Bedankt voor het contact opnemen met WebsiteMasters.';
$SETTINGS['bericht_suc'] .= 'U zult zo spoedig mogelijk bericht krijgen. <br />';
$SETTINGS['bericht_suc'] .= 'We gaan vertrouwelijk met informatie om en ';
$SETTINGS['bericht_suc'] .= 'uw gegevens zullen nooit aan derden worden verstrekt.<br />';
$SETTINGS['bericht_suc'] .= 'Hotmail gebruikers: Kijk goed in je spam folder voor onze reactie.<br /> ';
$SETTINGS['bericht_suc'] .= '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
$SETTINGS['bericht_suc'] .= '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
$SETTINGS['bericht_suc'] .= '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
$SETTINGS['bericht_suc'] .= '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
$SETTINGS['bericht_suc'] .= '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
$SETTINGS['bericht_suc'] .= '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
$SETTINGS['bericht_suc'] .= '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
$SETTINGS['bericht_suc'] .= '<br /><br /><br /><br /><br /><br /><br /><br /><br />';

//kijken voor een geldige email adres? true voor ja, false voor nee
$SETTINGS['email_check'] = true;

//foutmelding om te weergeven als het verzenden van
//de email niet is gelukt(dus als mail() FALSE geeft)
//html ingeschakelt

$SETTINGS['no_email'] = 'Er is een fout opgetreden';

//foutmelding om te weergeven als degene al een emailtje heeft verzonden. html ingeschakelt
$SETTINGS['error_spam'] = 'U heeft al eens een email gestuurd vandaag! Wij doen ons best binnen 24 uur te reageren!';

//tijd wanneer het koekje beschimmeld raakt ( in andere taal: cookie verloop tijd)
$SETTINGS['expire_cookie'] = time() + (3600 * 24); //verloopt na een dag


/// niks meer te editen

// error reporting goed zetten

error_reporting(E_ALL ^ E_NOTICE);
//////////////////////////////
/// functies defineeren
////////////////////////////


function parse_incoming() {
    ////////////////////////////////////////////////
    /// Deze functie geeft al het 'incoming' via
    /// _POST en _GET terug. _POST heeft voorrang,
    /// dus als een key in _GET al bestaat, wordt
    /// de key overgeschreven
    ////////////////////////////////////////////////
    /// array parse_incoming( void );


    $return = array();

    
    //eerst get,
    foreach ($_GET as $k => $v) {
        if (!is_array($v)) {
            $return[ $k ] = clean_value($v);
        }
    }

    
    //en dan post!
    foreach ($_POST as $k => $v) {
        if (!is_array($v)) {
            $return[ $k ] = clean_value($v);
        }
    }

    return $return;

}

function
clean_value($val) {
        global $site;
        
        if ($val == "")
        {

            return "";
        }

        
        $val = str_replace( "&#032;", " ", $val );

        $val = str_replace( chr(0xCA), "", $val );
        
        $val = str_replace( "&"            , "&amp;"         , $val );
        $val = str_replace( "<!--"         , "&#60;&#33;--"  , $val );
        $val = str_replace( "-->"          , "--&#62;"       , $val );
        $val = preg_replace( "/<script/i"  , "&#60;script"   , $val );
        $val = str_replace( ">"            , "&gt;"          , $val );
        $val = str_replace( "<"            , "&lt;"          , $val );
        $val = str_replace( "\""           , "&quot;"        , $val );
        $val = preg_replace( "/\n/"        , "<br>"          , $val );
        $val = preg_replace( "/\\\$/"      , "&#036;"        , $val );
        $val = preg_replace( "/\r/"        , ""              , $val );
        $val = str_replace( "!"            , "&#33;"         , $val );
        $val = str_replace( "'"            , "&#39;"         , $val );

        $val = preg_replace("/&amp;#([0-9]+);/s", "&#\\1;", $val );
        
        $val = stripslashes($val);
        
        $val = preg_replace( "/\\\(?!&amp;#|\?#)/", "&#092;", $val );
        
        return $val;
}

function
checkcookie() {
    ///////////////////////////////////////////////
    /// Deze functie kijkt voor een cookie,
    /// in dit geval of de gast al eens een
    /// mailtje heeft gestuurd.
    // geeft false voor ja, true voor nee
    ///////////////////////////////////////////////
    /// boolean checkcookie( void );


    if ($_COOKIE['sendmail'] == "yeah") {
        return false;
    }

    return true;
}


function
vervang_maand($datum) {
    //////////////////////////////////////////////////
    /// Deze functie gaat ervan uit dat $datum het
    /// volgende datum formaat gebruikt:
    /// d-m-Y H:i:xxxx
    /// d/m/Y H:i:xxxx
    /// d.m.y H:i:xxx
    /// Je zou natuurlijk strftime() kunnen gebruiken
    /// maar omdat we dan gebruik gaan maken van de
    /// ingebakken taalpakketten van php en het kan
    /// wel eens gebeuren dat men alleen engels
    /// in die versie heeft gestopt en dus nederlands
    /// niet ondersteund wordt.
    ////////////////////////////////////////////////
    /// string vervang_maand(string date);

    global $SETTINGS;
    list($dag, $maand, $rest) = split('[/.-]', $datum);
    foreach ($SETTINGS['maanden'] as $nummer => $naam) {
        $maand = str_replace ($nummer, $naam, $maand);
    }

    $temp_array = array( $dag, $maand, $rest);
    $datum = implode(" ", $temp_array);
    return $datum;
}

function
validate_email($input) {
    ///////////////////////////////////////
    /// Kijkt of $input een geldig
    /// email adres bevat
    /////////////////////////////////////
    /// boolean validate_email( string email );


    if (!preg_match("/^[A-Za-z0-9._\-]+\@[A-Za-z0-9._\-]+\.[A-Za-z]{2,4}$/",$input)) {
        return false;
    }

    return true;
}

function
checkstring($input, $minstrlen = 3, $maxstrlen = 10000, $maxwordlen = 300) {
    ////////////////////////////////
    /// Check $input string
    /// Geeft false als het niet goed is
    /// geeft true als de string $input
    /// oke is
    /////////////////////////////
    /// boolean checkstring(string input, [int minimaal tekens, [int maximaal tekens, [int maximaal woord lengte]]]);


    if (empty($input)) {
        return false;
    }

    if (strlen($input) < $minstrlen) {
        return false;
    }

    if (strlen($input) > $maxstrlen) {
        return false;
    }


    $temp_array = explode(" ", $input);
    foreach ($temp_array as $woord) {
        if (strlen($woord) > $maxwordlen) {
            return false;
        }
    }

    return true;
    
}

function
get_date($timezone = 1, $adjustment = 0) {
    ////////////////////////////////////////////////
    /// Verkrijg de datum en tijd van een tijdzone
    /////////////////////////////////////
    /// string get_date( [int timezone, [int adjustment]] );

    global $SETTINGS;
    $adjustment = $adjustment / 60;
    $date = gmdate($SETTINGS['datum_formaat'], time() + 3600*($adjustment + $timezone + date("I")));
    
    return $date;
}

function
show_form($naam = '', $email = '', $bedrijf = '', $telefoon = '', $titel = '', $bericht = '', $error = false, $to = false, $onderwerp = false) {
    ///////////////////////////////////////////////
    /// Laat formulier zien. Error als opgegeven
    ////////////////////////////////////////////////
    /// void show_form( [string naam, [string email, [string titel, [string bericht, [string error]]]]] );

    global $SETTINGS;
    if ($error == false) {
        $header = $SETTINGS['bericht_top'];
    }
else {
        $header = '<span style="color:#FF0000;font-weight:bold;">'.$error.'</span>';
    }


    if ($to == false) {
        $to = $SETTINGS['stdmail'];
    }

    if ($onderwerp == false) {
        $onderwerp = $SETTINGS['stdsub'];
    }

    $t = $_SERVER['PHP_SELF'];
    $s = explode("/", $_SERVER['PHP_SELF']);
    $this_file = $s[ count($s) - 1 ];
    echo '<form name="contact" action="'.$this_file.'" method="post">';
    echo '<input type="hidden" name="ip" value="'.$_SERVER['REMOTE_ADDR'].'" />';
    echo '<input type="hidden" name="act" value="dosend" />';

    echo '<table>'; //hier kun je eventueel nog style info aan toevoegen

    echo '<tr><td colspan="2" align="center">'.$header.'</td></tr>';
    echo '<tr><td align="left" valign="top">Naam:</td><td align="left"><input type="text" name="naam" value="'.$naam.'" size="75" maxlength="'.$SETTINGS['naam_max'].'" /></td></tr>';
    echo '<tr><td align="left" valign="top">Email:</td><td align="left"><input type="text" name="email" value="'.$email.'" size="75" maxlength="'.$SETTINGS['email_max'].'" /></td></tr>';
    echo '<tr><td align="left" valign="top">Bedrijf:</td><td align="left"><input type="text" name="bedrijf" value="'.$bedrijf.'" size="75" maxlength="'.$SETTINGS['bedrijf_max'].'" /></td></tr>';
    echo '<tr><td align="left" valign="top">Telefoonnummer:</td><td align="left"><input type="text" name="telefoon" value="'.$telefoon.'" size="75" maxlength="'.$SETTINGS['telefoon_max'].'" /></td></tr>';
    echo '<tr><td align="left" valign="top">Kies:</td><td align="left">';
    foreach ($SETTINGS['emails'] as $name => $adres) {
        $name = htmlentities($name);
        echo '<input type="radio" name="to" value="'.str_replace('_', ' ', $name).'" id="'.str_replace('_', ' ', $name).'" ';
        if (strtolower($to) == strtolower($name)) {
            echo 'checked="checked" ';
        }

        echo '/><label for="'.str_replace('_', ' ', $name).'">'.$name.'</label><br />';
    }

    print '</td></tr>';
    if ($SETTINGS['do_onderwerpen'] == true) {
        print '<tr><td align="left" valign="top">Onderwerp:</td>';
        print '<td align="left"><select name="onderwerp">';
        foreach ($SETTINGS['onderwerpen'] as $id => $sub) {
            print '<option value="'.$id.'" ';
            if ($sub == $onderwerp) {
                print 'selected="selected"';
            }

            print '>'.htmlentities($sub).'</option>';
        }

        print '</select></td></tr>';
    }


    echo '<tr><td align="left" valign="top">Titel:</td><td align="left"><input type="text" name="titel" value="'.$titel.'" size="75" maxlength="'.$SETTINGS['titel_max'].'" /></td></tr>';
    echo '<tr><td align="left" valign="top">Je bericht:</td><td align="left"><textarea name="bericht" cols="75" rows="7" wrap="soft">'.$bericht.'</textarea></td>';
    echo '<tr><td align="center" colspan="2"><input type="submit" name="submit" value="Verzend email" /></td></tr>';
    echo '</table></form>';
    echo '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
    echo '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
    echo '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
    echo '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
    echo '<br /><br /><br /><br /><br /><br /><br /><br /><br />';
}

function
sendmail($naam, $email, $bedrijf, $telefoon, $titel, $bericht, $ip, $datum, $to, $onderwerp) {
    //////////////////////////////////////////////
    /// Stuurt emaitje. Gebruikt de $SETTINGS var
    /// en geeft false als het niet lukt
    /////////////////////////////////////////////
    /// boolean sendmail( string naam, string email, string titel, string bericht, string ip);

    global $SETTINGS;
    $to  = $SETTINGS['emails'][ str_replace(' ', '_', $to) ];
    $sub = $SETTINGS['onderwerpen'][ $onderwerp ];

    $subject = "Contact Formulier - ".$naam.": ".$titel;
    if ($SETTINGS['mime'] == "text/html") {
        $headers  = "MIME-Version: 1.0\r\n";
        $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

        $message  = "<html><head>";
        $message .= "</head><body>";
        $message .= "Iemand heeft het contact formulier ingevuld!<br /><br />";
        $message .= "<table>";
        $message .= "<tr><td>Naam:</td><td>".$naam."</td></tr>";
        $message .= "<tr><td>Email:</td><td><a href=\"mailto:".$email."\">".$email."</a></td></tr>";
        $message .= "<tr><td>Onderwerp:</td><td>".htmlentities($sub)."</td></tr>";
        $message .= "<tr><td>Bedrijf:</td><td>".$bedrijf."</td></tr>";
        $message .= "<tr><td>Telefoonnummer:</td><td>".$telefoon."</td></tr>";
        $message .= "<tr><td>Titel:</td><td>".$titel."</td></tr>";
        $message .= "<tr><td>Bericht:</td><td>".$bericht."</td></tr>";
        $message .= "<tr><td colspan=\"2\">&nbsp;</td></tr>";
        $message .= "<tr><td>Datum:</td><td>".vervang_maand($datum)."</td></tr>";
        $message .= "<tr><td>Ip:</td><td><a href=\"http://sunny.nic.com/cgi-bin/whois\">".$ip."</a></td></tr>";
        $message .= "</table></body></html>";


    }
else {
        $headers  = "MIME-Version: 1.0\r\n";
        $headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";

        $message  = "==============================================\n";
        $message .= "Iemand heeft het contact formulier ingevuld!\n";
        $message .= "==============================================\n";
        $message .= "\n";
        $message .= "Naam:\n";
        $message .= $naam."\n\n";
        $message .= "Email:\n";
        $message .= $email."\n\n";  
        $message .= "bedrijf:\n";
        $message .= $bedrijf."\n\n";
        $message .= "telefoon:\n";
        $message .= $telefoon."\n\n";
        $message .= "onderwerp:\n";        
        $message .= $sub."\n\n";
        $message .= "Titel:\n";
        $message .= $titel."\n\n";
        $message .= "Bericht:\n";
        $message .= $bericht."\n\n";
        $message .= "\n";
        $message .= "Datum:\n";
        $message .= vervang_maand($datum)."\n\n";
        $message .= "Ip adres:\n";
        $message .= $ip."\n\n";

    }

    $headers .= "From: Php automailer <{$email}>\r\n";

    if (!mail($to, $subject, $message, $headers)) {
        return false;
    }

    return true;
}


///////////////////////////
/// En nu het script.....
///////////////////////////



$IN = parse_incoming();

if (checkcookie()) {
    if ($IN['act'] != 'dosend') {
        show_form();
    }
else {
        $err = false;
        if (!checkstring($IN['naam'], $SETTINGS['naam_min'], $SETTINGS['naam_max'])) {
            $err = 'Geen naam ingevoerd of je naam is te kort of te lang.';
        }
elseif (!checkstring($IN['email'], $SETTINGS['email_min'], $SETTINGS['email_max'])) {
            $err = 'Geen email ingevoerd of je email is te kort of te lang.';
        }
elseif (!validate_email($IN['email']) && $SETTINGS['email_check'] == true) {
            $err = 'Ongeldig email adres ingevoerd.';
        }
elseif (!checkstring($IN['titel'], $SETTINGS['titel_min'], $SETTINGS['titel_max'])) {
            $err = 'Geen titel ingevoerd of je titel is te kort of te lang.';
        }
elseif (!checkstring($IN['bericht'], $SETTINGS['bericht_min'], $SETTINGS['bericht_max'])) {
            $err = 'Geen bericht ingevoerd of je bericht is te kort of te lang.';
                    }
elseif (!checkstring($IN['telefoon'], $SETTINGS['telefoon_min'], $SETTINGS['telefoon_max'])) {
            $err = 'Geen telefoonnummer ingevoerd of ongeldig.';
                    }
elseif (!checkstring($IN['bedrijf'], $SETTINGS['bedrijf_min'], $SETTINGS['bedrijf_max'])) {
            $err = 'Bedrijfs naam te lang.';
        }

        if ($err == false) {
            $datum = get_date($SETTINGS['timezone'], $SETTINGS['adjustment']);
            if (!sendmail($IN['naam'], $IN['email'], $IN['bedrijf'], $IN['telefoon'], $IN['titel'], $IN['bericht'], $IN['ip'], $datum, $IN['to'], $IN['onderwerp'])) {
                echo $SETTINGS['no_email'];
            }
else {
                echo $SETTINGS['bericht_suc'];
                setcookie('sendmail', "yeah", $SETTINGS['expire_cookie']);
            }
        }
else {
            show_form($IN['naam'], $IN['email'], $IN['bedrijf'], $IN['telefoon'], $IN['titel'], $IN['bericht'], $err, $IN['to'], $IN['onderwerp']);
        }
    }
}
else {
    echo $SETTINGS['error_spam'];
}


//laten we nu maar alles outputten, het is genoeg
//geweest voor deze keer en er komen toch
//geen headers meer ^^

ob_end_flush();
?>
 
- SanThe -

- SanThe -

17/07/2015 20:18:41
Quote Anchor link
Graag alleen relevante code plaatsen.
 

17/07/2015 20:36:48
Quote Anchor link
Eigenlijk wou ik vragen of iemand het voor me kon doen.
Heb niet zo heel veel ervaring met php.

De pagina maakt nog geen contact met de leden tabel.
 
Obelix Idefix

Obelix Idefix

17/07/2015 21:10:11
Quote Anchor link
Jasper Schellekens op 17/07/2015 20:36:48:
Eigenlijk wou ik vragen of iemand het voor me kon doen.

Plaats een vacature.
 



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.