headers allready sent

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Junior .NET developer

Functie Wij hebben drie scrumteams. Het eerste team focust zich op het stukje hardware wat wij in huis doen. Zij maken als team o.a. gebruik van C++. De andere twee scrumteams zijn allebei bezig met data verwerking en maken hierbij in de backend gebruik van C# .NET / .NET Core. Het verschil tussen deze teams is dat één team de data verwerking doet voor de mobiele applicatie. Zij werken hierbij dus ook met Xamarin. Het andere team focust zich op de webapplicaties en maakt hierbij ook gebruik van ASP.NET MVC. Op basis van jouw ambities en kwaliteiten kijken wij samen

Bekijk vacature »

C# .NET Software Developer

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging binnen software development waar je gaat werken voor een jong en flexibel bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Software Developer met ervaring binnen C# .NET die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Verder begeleid je complexe projecten, ben jij iemand die altijd kansen ziet? Dan zoeken wij jou! In deze functie ga jij je bezighouden met: Meedenken in oplossingsrichtingen; Werken aan de architectuur; Het verbeteren van functionaliteiten binnen het dataplatform; Ontwikkelen van nieuwe technologieën. Bedrijfsprofiel Waar ga je aan de

Bekijk vacature »

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 »

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 »

Fullstack developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie werken? Voor een mooi softwarebedrijf in omgeving Alblasserdam zijn wij op zoek naar versterking op de afdeling Software Development! Als Fullstack react.js developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! 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 de back

Bekijk vacature »

.NET software developer

Functie omschrijving Voor een gewilde werkgever in omgeving Roosendaal zijn wij op zoek naar een back-end software developer met een aantal jaar werkervaring. Je krijgt een plekje in het workflow team en je zal betrokken worden bij het bouwen van nieuwe software, en het optimaliseren van bestaande code. Je werkt bij dit bedrijf in een Scrum team waarin je soms klantcontact hebt. Jouw werkzaamheden zullen er als volgt uit zien: Je krijgt een plekje op de in-house IT afdeling. Deze afdeling bestaat uit zo'n 12 collega's, verdeeld over verschillende specialisaties (BI, Beheer, Business software & workflow). De vacature staat open

Bekijk vacature »

Infrastructure Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 12945 Introductie Our client is one of the most innovative companies within the Netherlands. Currently we are looking for an Infrastructure Platform Engineer. Within this role you will be developing the infrastructure. Functieomschrijving Within this role you are responsible in the development of our distributed data and compute platform infrastructure. You will design, develop and implement new features and fixes. Next to this you will integrate and configurate other packages that supports the development of tuning applications within the organisation. You will support customer sites remotely. Design and implement the

Bekijk vacature »

Front-end Developer

Gezellige team, passie en een groene toekomst! Lees hier de vacature van Front-end Developer bij All in Power! All in power heeft zich tot doel gesteld écht bij te dragen aan de energietransitie. Dit doen wij door de markt voor energie volledig op zijn kop te zetten. Producenten van schone (wind- of zonne-)energie verkopen via ons platform hun energie rechtstreeks aan gebruikers. Of dit nu huishoudens, bedrijven of bijvoorbeeld laadpalen zijn ons platform maakt het uitwisselen van energie mogelijk. Zo maken we de business case van onze klanten veel sterker en loont het om (meer) te investeren in vergroening voor

Bekijk vacature »

PHP Developer

Functieomschrijving Vanuit het hoofdkantoor in omgeving Breda ben je als PHP/Symfony Developer niet alleen gefocust op het ontwikkelen van software. Daarnaast ben je voortdurend bezig met het zoeken naar nieuwe trends en ontwikkelingen die van waarde kunnen zijn voor de efficiëntie van software ontwikkeling. Hieronder een kort overzicht van jouw takenpakket: Het ontwerpen en implementeren van webapplicaties met het Symfony Framework; Het schrijven van een schone en efficiënte codes; Het testen van ontwikkelde applicaties om te zorgen dat ze goed functioneren en voldoen aan de eisen van de klant; Onderhouden en updaten van bestaande applicaties die zijn gebouwd met het

Bekijk vacature »

.Net Front-end Ontwikkelaar

Wij zoeken een .Net Front-end Ontwikkelaar! Omschrijving Kun jij snel schakelen en ben je stressbestendig? Dan zoeken wij jou! Als .Net Front-end Ontwikkelaar help je mee aan de webapplicatie die over de hele wereld door allerlei bedrijven wordt gebruikt. Je werkt daarnaast mee aan nieuwe en verbeterde functionaliteiten en helpt met het oplossen van bugs. Over de opdrachtgever Je komt te werken in een ambitieus team dat zich blijft ontwikkelen. Dit is alle informatie die we nu kunnen delen over de werkplek. Als jij de .Net Front-end Ontwikkelaar bent voor deze job, vertellen we je snel nóg meer. Eisen Heb

Bekijk vacature »

C# .NET developer voor innovatieve applicaties gez

Bedrijfsomschrijving Deze werkgever houdt zich al ruim 20 jaar bezig met het ontwikkelen van innovatieve software en dat willen ze graag nog lang doorzetten. En dat merk je ook als je als .NET developer hier aan de slag gaat. De applicaties worden continu doorontwikkeld met altijd als uitgangspunt dat zowel de kwaliteit als het gebruikersgemak van hoog niveau is. Het bedrijf telt inmiddels ruim 25 medewerkers waarvan meer dan de helft op de development afdeling werken. Meer weten over deze werkgever? Mail naar [email protected] of bel 0657578548 Functieomschrijving Je komt te werken in een Scrum team met andere .NET developers

Bekijk vacature »

Full Stack Developer/ Applicatie Ontwikkelaar

Wat jij doet Als Applicatie Ontwikkelaar ben je onderdeel van het team die de Rimote omgeving ontwikkeld en onderhoud. Hierbij kan je denk aan de cloud, on premise en webapplicaties welke worden gebruikt in bijvoorbeeld industriële bakkerijen, biogasinstallaties en kwekerijen. Deze applicaties verzorgen (remote) de aansturing en monitoring van processen, machines en robots. Van a tot z ben je betrokken bij projecten. Dit betekent vanaf ontwerp tot oplevering. Je moet samen met jouw team een goed product neer zetten. Dit begint met het opzetten van het ontwerp. De basis van de software moet staan als een huis. Daarvoor moet jij

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 »

Senior Front end developer Angular

Functie Er zijn momenteel 5 SCRUM-teams waarvan drie gefocust zijn op DevOps en de huidige projecten en twee op innovatie van de platformen. Jij zal onderdeel worden van het innovatie Scrum team. De 2 multidisciplinaire innovatie teams bestaan momenteel uit 14 werknemers. Jij als senior Front end developer wordt onderdeel van onze innovatieteams. De innovatieteams houden zich bezig met het door ontwikkelen van de huidige producten en denken na over nieuwe functionaliteiten. Binnen de rol van Front end developer krijg je veel vrijheid en kan je je dag zelf indelen. Dingen waar jij je dagelijks mee bezig zult houden is

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »
Anja Olsthoorn

Anja Olsthoorn

10/11/2011 12:57:21
Quote Anchor link
Ik zie bij de laatste berichten ook iets staan over headers, maar dat lost het bij mij nog niet op. Dit script werkte eigenlijk altijd prima, maar sinds ik overgegaan ben naar php5 krijg ik die headers melding ( Warning: Cannot modify header information - headers already sent by (output started at /home/admin/domains/site.nl/public_html/contact.php:8) in /home/admin/domains/site.nl/public_html/contact.php on line 487

Met de plaatsing ben ik al aan het goochelen geweest, heb het ook met een include geprobeerd bovenaan de pagina, maar dan krijg ik alleen een vreemde layout.

Het script:
----------------------------------------------------------------------------
<!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" />
<title>Contactpagina</title>
<meta name="keywords" content="contact, email ons, email, medewerkers" />
<link href="layout/css.css" rel="stylesheet" type="text/css" />
<link href="layout/rood.css" rel="stylesheet" type="text/css" />
<script src="SpryAssets/SpryAccordion.js" type="text/javascript"></script>
<link href="SpryAssets/SpryAccordion.css" rel="stylesheet" type="text/css" />
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php include("js/terug.js"); ?>

</script>
</head>

<body class="thrColAbsHdr" onload="MM_preloadImages('images/terugknoporanje.gif')">

<div id="container">
<div id="header">
<a href="http://www.site.nl/index.php">
<img src="images/logo.jpg" width="780" height="150" border="0" alt="banner" /></a>
<!-- end #header --> </div>

<div id="sidebar1">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php include("layout/hdbasisalgurl.php"); ?>

<!-- end #sidebar1 --></div>



<div id="mainContent2">
<h1>Contactpagina</h1>
In verband met de veiligheid van de emailadressen wordt u verzocht uw vragen enz. via dit formulier in te vullen en te verzenden. Wilt u (grote) bestanden meesturen, neem dan even contact op met de persoon naar wie u dit wil versturen.<p>
<a href="#" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('terugknop','','images/terugknoporanje2.gif',1)"><img src="images/terugknoprood2.gif"onclick="javascript:history.back();" alt="naar vorige pagina" name="terugknop" width="75" height="20" border="0" id="terugknop" align="right" /></a>




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
<?php
////////////////////////////////////////////////
/// Contact formulier met formherhaling
/// Gemaakt door Sebazzz
/// xhtml compatible
///////////////////////////////////////////

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

ob_start();

include("test.php");

//headers alvast instellen

/////////////////////////////////////////////////////
/// 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

$email_sql = "SELECT voornaam, tussenvoegsel, achternaam, emailadres FROM email ORDER BY achternaam";

$email_result = mysql_query($email_sql) or DIE(mysql_error());
$emails_array;
while(list($voornaam, $tussenvoegsel, $achternaam, $emailadres)= mysql_fetch_row($email_result)) {    
    $email_name = $voornaam ." ". $tussenvoegsel ." ". $achternaam;
    $emails_array[$email_name] = $emailadres;
}

$SETTINGS['emails'] = $emails_array;

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

//onderwerpen gebruiken?
//true / false

$SETTINGS['do_onderwerpen'] = true;

//welke onderwerpen?
// id => onderwerp

$SETTINGS['onderwerpen'] = array(1  => 'Suggestie',
                                 2  => 'Klacht',
                                 3  => 'Ideeen',
                                 4  => 'Vraag',
                                 );


//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 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'] = '&nbsp;&nbsp;';

//bericht dat weergegeven wordt nadat het emailtje successvol is verzonden
$SETTINGS['bericht_suc']  = 'Bedankt voor het versturen van een e-mail.&nbsp;';
$SETTINGS['bericht_suc'] .= 'U zult indien nodig snel een antwoord krijgen. <br />';
$SETTINGS['bericht_suc'] .= 'We gaan vertrouwelijk om met de informatie en ';
$SETTINGS['bericht_suc'] .= 'uw email adres zal nooit aan derden worden gegeven.';
$SETTINGS['bericht_suc'] .= '<p><a href="http://www.site.nl/index.php">Terug naar de voorpagina</a></p>.';

//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 foutje opgetreden waardoor het email verzenden is mislukt...';

//foutmelding om te weergeven als degene al een emailtje heeft verzonden. html ingeschakelt
$SETTINGS['error_spam'] = 'U heeft vandaag al eens een emailtje gestuurd!';

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


/// 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 true;
    }

    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 = '', $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 colspan="2" align="center">Emailadressen zijn gesorteerd op achternaam !</td></tr>';
    echo '<tr><td align="left" valign="top">Naar wie wilt u een mail sturen? :</td><td align="left">';
    echo("<select name=\"to\" id=".str_replace('_', ' ', $name).">");
    foreach ($SETTINGS['emails'] as $name => $adres) {
        $name = htmlentities($name);
        echo("<option value=\"$name\">$name</option>");
    }

    echo("</select>");
    print '</td></tr>';

    echo '<tr><td align="left" valign="top">Uw naam:</td><td align="left"><input type="text" name="naam" value="'.$naam.'" size="60" maxlength="'.$SETTINGS['naam_max'].'" /></td></tr>';
    echo '<tr><td align="left" valign="top">Uw emailadres:</td><td align="left"><input type="text" name="email" value="'.$email.'" size="60" maxlength="'.$SETTINGS['email_max'].'" /></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="60" maxlength="'.$SETTINGS['titel_max'].'" /></td></tr>';
    echo '<tr><td align="left" valign="top">Uw bericht:</td><td align="left"><textarea name="bericht" cols="45" 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>';
}

function
sendmail($naam, $email, $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'][$to];
    
    $sub = $SETTINGS['onderwerpen'][ $onderwerp ];

    $subject = "Mailtje van de website - ".$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 .= "Je hebt een emailtje gekregen van een gast van de website!<br /><br />";
        $message .= "LET OP! Beantwoord deze mail niet !<br />";
        $message .= "Kies eerst het emailadres van de afzender (hieronder in 'Email van':)<br />";
        $message .= "en plak dit emailadres in je emailprogramma in 'AAN'<br /><br />";
        $message .= "<table>";
        $message .= "<tr><td><b><u>HET BERICHT</u></b26-06-2008></td></tr>";
        $message .= "<tr><td>Naam:</td><td>".$naam."</td></tr>";
        $message .= "<tr><td>Email van:</td><td><a href=\"mailto:".$email."\">".$email."</a></td></tr>";
        $message .= "<tr><td>Onderwerp:</td><td>".htmlentities($sub)."</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 .= "Emailtje van een gast van je website!\n";
        $message .= "==============================================\n";
        $message .= "\n";
        $message .= "Naam:\n";
        $message .= $naam."\n\n";
        $message .= "Email:\n";
        $message .= $email."\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 .= "Mail contactpagina website <{$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.';
        }

        if ($err == false) {
            $datum = get_date($SETTINGS['timezone'], $SETTINGS['adjustment']);
            if (!sendmail($IN['naam'], $IN['email'], $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['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();
?>




<!-- end #maincontent --></div>

<div id="footer">tekst
<!-- end #footer -->
</div>
<!-- end #container --></div>
<script type="text/javascript">
<!--
var Accordion1 = new Spry.Widget.Accordion("Accordion1");
//-->
</script>
</body>
</html>
Gewijzigd op 10/11/2011 12:59:24 door Anja Olsthoorn
 
PHP hulp

PHP hulp

26/04/2024 04:31:14
 
Jacco Brandt

Jacco Brandt

10/11/2011 12:59:23
Quote Anchor link
Misschien alleen de relevante code laten zien?
 
- Ariën  -
Beheerder

- Ariën -

10/11/2011 13:00:01
Quote Anchor link
Kan je de code aanpassen tot relevante code, en deze tussen code-tags plaatsen?
Haal ook even die ob_start() weg.
 
Anja Olsthoorn

Anja Olsthoorn

10/11/2011 13:00:13
Quote Anchor link
je bedoelt alleen het stuk php? Want ik zou anders niet weten wat?
 
- Ariën  -
Beheerder

- Ariën -

10/11/2011 13:04:13
Quote Anchor link
de hele code even wat inkorten. Het lijkt me logisch dat ruim 450 regels erg overbodig zijn om te posten ;-)
 
Anja Olsthoorn

Anja Olsthoorn

10/11/2011 13:05:55
Quote Anchor link
Zo beter?

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
<?php
include("test.php");
$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_sql = "SELECT voornaam, tussenvoegsel, achternaam, emailadres FROM email ORDER BY achternaam";

$email_result = mysql_query($email_sql) or DIE(mysql_error());
$emails_array;
while(list($voornaam, $tussenvoegsel, $achternaam, $emailadres)= mysql_fetch_row($email_result)) {    
    $email_name = $voornaam ." ". $tussenvoegsel ." ". $achternaam;
    $emails_array[$email_name] = $emailadres;
}

$SETTINGS['emails'] = $emails_array;


$SETTINGS['do_onderwerpen'] = true;

$SETTINGS['onderwerpen'] = array(1  => 'Suggestie',
                                 2  => 'Klacht',
                                 3  => 'Ideeen',
                                 4  => 'Vraag',
                                 );

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

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

$SETTINGS['datum_formaat'] = 'd-m-Y H:i:s';

$SETTINGS['timezone'] = 1;

$SETTINGS['adjustment'] = 0;

$SETTINGS['naam_min'] = 3;
$SETTINGS['naam_max'] = 20;

$SETTINGS['titel_min'] = 4;
$SETTINGS['titel_max'] = 40;

$SETTINGS['email_min'] = 4;
$SETTINGS['email_max'] = 40;

$SETTINGS['bericht_min'] = 20;
$SETTINGS['bericht_max'] = 10000;
$SETTINGS['bericht_wmx'] = 50;
$SETTINGS['bericht_top'] = '&nbsp;&nbsp;';
$SETTINGS['bericht_suc']  = 'Bedankt voor het versturen van een e-mail.&nbsp;';
$SETTINGS['bericht_suc'] .= 'U zult indien nodig snel een antwoord krijgen. <br />';
$SETTINGS['bericht_suc'] .= 'We gaan vertrouwelijk om met de informatie en ';
$SETTINGS['bericht_suc'] .= 'uw email adres zal nooit aan derden worden gegeven.';
$SETTINGS['bericht_suc'] .= '<p><a href="http://www.site.nl/index.php">Terug naar de voorpagina</a></p>.';
$SETTINGS['email_check'] = true;
$SETTINGS['no_email'] = 'Er is een foutje opgetreden waardoor het email verzenden is mislukt...';
$SETTINGS['error_spam'] = 'U heeft vandaag al eens een emailtje gestuurd!';
error_reporting(E_ALL ^ E_NOTICE);
function
parse_incoming() {
  $return = array();
    foreach ($_GET as $k => $v) {
        if (!is_array($v)) {
            $return[ $k ] = clean_value($v);
        }
    }

    
    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() {

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

    return true;
}



    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) {
    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) {
    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) {
    global $SETTINGS;
    $adjustment = $adjustment / 60;
    $date = gmdate($SETTINGS['datum_formaat'], time() + 3600*($adjustment + $timezone + date("I")));
    
    return $date;
}

function
show_form($naam = '', $email = '', $titel = '', $bericht = '', $error = false, $to = false, $onderwerp = false) {
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 colspan="2" align="center">Emailadressen zijn gesorteerd op achternaam !</td></tr>';
    echo '<tr><td align="left" valign="top">Naar wie wilt u een mail sturen? :</td><td align="left">';
    echo("<select name=\"to\" id=".str_replace('_', ' ', $name).">");
    foreach ($SETTINGS['emails'] as $name => $adres) {
        $name = htmlentities($name);
        echo("<option value=\"$name\">$name</option>");
    }

    echo("</select>");
    print '</td></tr>';

    echo '<tr><td align="left" valign="top">Uw naam:</td><td align="left"><input type="text" name="naam" value="'.$naam.'" size="60" maxlength="'.$SETTINGS['naam_max'].'" /></td></tr>';
    echo '<tr><td align="left" valign="top">Uw emailadres:</td><td align="left"><input type="text" name="email" value="'.$email.'" size="60" maxlength="'.$SETTINGS['email_max'].'" /></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="60" maxlength="'.$SETTINGS['titel_max'].'" /></td></tr>';
    echo '<tr><td align="left" valign="top">Uw bericht:</td><td align="left"><textarea name="bericht" cols="45" 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>';
}

function
sendmail($naam, $email, $titel, $bericht, $ip, $datum, $to, $onderwerp) {
    global $SETTINGS;
    $to  = $SETTINGS['emails'][$to];
    
    $sub = $SETTINGS['onderwerpen'][ $onderwerp ];

    $subject = "Mailtje van de website - ".$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 .= "Je hebt een emailtje gekregen van een gast van de website!<br /><br />";
        $message .= "LET OP! Beantwoord deze mail niet !<br />";
        $message .= "Kies eerst het emailadres van de afzender (hieronder in 'Email van':)<br />";
        $message .= "en plak dit emailadres in je emailprogramma in 'AAN'<br /><br />";
        $message .= "<table>";
        $message .= "<tr><td><b><u>HET BERICHT</u></b26-06-2008></td></tr>";
        $message .= "<tr><td>Naam:</td><td>".$naam."</td></tr>";
        $message .= "<tr><td>Email van:</td><td><a href=\"mailto:".$email."\">".$email."</a></td></tr>";
        $message .= "<tr><td>Onderwerp:</td><td>".htmlentities($sub)."</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 .= "Emailtje van een gast van je website!\n";
        $message .= "==============================================\n";
        $message .= "\n";
        $message .= "Naam:\n";
        $message .= $naam."\n\n";
        $message .= "Email:\n";
        $message .= $email."\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 .= "Mail contactpagina website <{$email}>\r\n";

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

    return true;
}


$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.';
        }

        if ($err == false) {
            $datum = get_date($SETTINGS['timezone'], $SETTINGS['adjustment']);
            if (!sendmail($IN['naam'], $IN['email'], $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['titel'], $IN['bericht'], $err, $IN['to'], $IN['onderwerp']);
        }
    }
}
else {
    echo $SETTINGS['error_spam'];
}


?>


Toevoeging op 10/11/2011 13:07:22:

ik ben nu even onderweg naar huis, hoop dat het zo goed is? Ik hoop echt dat jullie me kunnen helpen. Moet ik het nog meer inkorten en wat moet ik dan weg halen?
 
- Ariën  -
Beheerder

- Ariën -

10/11/2011 13:08:55
Quote Anchor link
Wat gebeurt er als je de HTML die voor je PHP-script staat weghaalt?
 
Anja Olsthoorn

Anja Olsthoorn

10/11/2011 13:16:00
Quote Anchor link
Welk html bedoel je? Een deel is de opmaak van de pagina zelf. Ik heb nu geprobeerd dit weg te laten:"
<!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" />

Maar dat helpt niet.
Ik ga nu onderweg naar huis, ben er over een kwartier weer.
 
- Ariën  -
Beheerder

- Ariën -

10/11/2011 13:22:49
Quote Anchor link
In de foutmelding wordt ook aangegeven op welke regel de output staat. Controleer dat eens.
 
Anja Olsthoorn

Anja Olsthoorn

10/11/2011 14:09:41
Quote Anchor link
Dat zegt eigenlijk helemaal niets, op regel 8 staat:
<link href="layout/css.css" rel="stylesheet" type="text/css" />
en op regel 478:
setcookie('sendmail', "yeah", $SETTINGS['expire_cookie']);
 
- Ariën  -
Beheerder

- Ariën -

10/11/2011 14:10:23
Quote Anchor link
En dat is het hele eiereneten, er mag juist geen HTML voor een header zoals setcookie() staan.
 
Anja Olsthoorn

Anja Olsthoorn

10/11/2011 14:12:56
Quote Anchor link
hoe kan ik dat dan oplossen, ik heb eigenlijk geen idee?
 
- Ariën  -
Beheerder

- Ariën -

10/11/2011 14:18:17
Quote Anchor link
De header als eerste plaatsen, en daarna de html.
 
Anja Olsthoorn

Anja Olsthoorn

10/11/2011 14:30:30
Quote Anchor link
Sorry maar ik begrijp het niet. Headers komt nogal eens voor in het script, op de regels 177, 179, 197, 238 en 261 bv. Wat moet ik nu doen?
 
- Ariën  -
Beheerder

- Ariën -

10/11/2011 14:37:27
Quote Anchor link
Er mag geen output voor staan, geen witregels en HTML dus.
Wat is je ervaring met PHP verder?
 
Anja Olsthoorn

Anja Olsthoorn

10/11/2011 14:38:54
Quote Anchor link
Dus als ik het goed begrijp moet geen witregels en html voor de header plaatsen?

Als ik dat weghaal (er staan 6x headers in) dan wordt de pagina heel erg vreemd.

Mijn kennis van PHP is goed/ervaren maar dit snap ik niet .

Edit : function show_form heb ik helemaal voor de html neergezet maar ik krijg nog steeds de foutcode, ik snap echt niet wat ik verkeerd doet/over het hoofd ziet.

Het zal vast iets heel makkelijks zijn.

Toevoeging op 10/11/2011 15:55:15:

Weet iemand wat nog meer zou kunnen proberen?
Gewijzigd op 10/11/2011 15:04:55 door Anja Olsthoorn
 
Jacco Brandt

Jacco Brandt

10/11/2011 17:24:53
Quote Anchor link
Je kennis van PHP is blijkbaar niet goed/ervaren. Er is een simpele oplossing: ob_Start() als allereerste regel in je bestand zetten, maar beter zet je al je php voor de output.
 
Anja Olsthoorn

Anja Olsthoorn

10/11/2011 18:36:11
Quote Anchor link
Nou ja: een paar berichten terug (13:00) zegt Aar juist van: Haal ook even die ob_start() weg, dus dat is niet zo'n nuttige opmerking. En nu zal ik dus gaan proberen om alles erachter te zeggen in plaats van ervoor.
 
- SanThe -

- SanThe -

10/11/2011 19:18:15
Quote Anchor link
ob_start() is een lapmiddel.
 
Jacco Brandt

Jacco Brandt

10/11/2011 19:50:52
Quote Anchor link
Die heeft inderdaad weinig nut na de HTML.
Daarbij is ob_Start() niet het beste middel, maar kan het wel de problemen fixen die er nu zijn ontstaan.
 



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.