headers allready sent

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

PHP Developer - medior functie

Functieomschrijving Ben jij innovatief en wil jij je kennis graag delen met jouw nieuwe collega's? Lees dan snel verder! Voor een leuke opdrachtgever in de omgeving van Roosendaal zoeken wij een Symfony developer. Of je nou junior, medior of senior bent, je krijgt hier alle vrijheid en verantwoordelijkheid om jouw eigen loopbaan te ontwikkelen. Je gaat je hier bezig houden met en inspelen op de actualiteiten van jouw vakgebied. Techstack: Symfony, PHP, mySQL. Kennis van Svelte is helemaal mooi meegenomen. Bedrijfsprofiel Al sinds '99 is dit webbureau actief. De kernwaarden binnen het bedrijf zijn integer, dienstbaar en deskundig. Je komt

Bekijk vacature »

Software Ontwikkelaar .NET te Zaandam

Bedrijfsomschrijving Je komt hier terecht bij een door-en-door softwarebedrijf, waarbinnen meerdere SaaS pakketten worden ontwikkelt voor diverse sectoren. Hierbij kun je denken aan bijvoorbeeld de logistieke en medische branche. Deze organisatie kenmerkt zich door de hoge mate van complexiteit in de applicaties, wat betekent dat jij je hier niet zal gaan vervelen. Integendeel: Jij gaat hier elke dag ontzettend veel leren en je in razend tempo ontwikkelen als C# .Net Developer met focus op back-end. Het team bestaat uit ongeveer 20 personen personen, waarvan het grootste deel zich richt op software development. De sfeer is informeel en professioneel. De producten

Bekijk vacature »

Software Developer C# .NET

Functie omschrijving Zoek jij een nieuwe uitdaging binnen development waar je komt te werken binnen een flexibel, jong en ondernemend bedrijf? Wij zijn voor deze functie op zoek naar een C# .NET Developer 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! Verder ga jij je bezighouden met: Het verbeteren van functionaliteiten binnen het dataplatform; Meedenken in oplossingsrichtingen; Werken aan de architectuur; Ontwikkelen van nieuwe technologieën. Bedrijfsprofiel Waar ga je werken? De organisatie waar je voor gaat werken heeft een onafhankelijk

Bekijk vacature »

Junior Front end developer Onderwijssoftware

Functie Als Junior front end developer kom jij terecht in een klein, maar hecht team bestaande uit 5 andere developers (waarvan 2 senioren, 2 medior en 1 junior). Met de gezamenlijke missie om “ieder kind te helpen met onze software” wordt er dagelijks gepassioneerd en hard gewerkt aan ons in-house ontwikkeld platform. Deze software is gebaseerd is op AI, machine Learning en wetenschappelijke inzichten. Dagelijks zul jij werken met onze high traffic webapplicatie. We hebben ruim 300.00 gebruikers en meer dan 2 miljard records waar je te maken mee krijgt! Verder zul jij je bezighouden met: – Het ontwikkelen van

Bekijk vacature »

C# .NET Developer

Functie omschrijving Wij zijn op zoek naar een C# .NET Developer voor een leuke opdrachtgever in de omgeving van Hilversum! Voor een leuk bedrijf in de omgeving van Hilversum zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. Ben jij iemand die graag aan verschillende projecten werkt en het ook leuk vindt om bij klanten op bezoek te gaan? Dan ben jij de perfecte kandidaat! Deze functie is erg divers, je moet dus goed kunnen schakelen. Je komt te werken in een klein team van developers. Binnen het bedrijf hangt er een gemoedelijke informele

Bekijk vacature »

Senior PHP developer

Functie Als Senior PHP developer heb je een sterke mening over de architectuur van projecten en de processen binnen het team. Je bent de sparringpartner voor je Team Lead. Ook ondersteun je met jouw kennis de minder ervaren developers in jouw team. Ze werken regelmatig aan projecten vanaf scratch en dit geeft ruimte om voor nieuwe technieken te kiezen. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en

Bekijk vacature »

Belastingdienst - Freelance Applicatieontwikkelaar

Startdatum: 01.06.2023 Richttarief: €65,00 - €75,00 Duur van de opdracht: 6 maanden Uren per week: 36 Taal: Nederlands vereist! Gelieve in het Nederlands te solliciteren. Hybride. Kantoordagen in Utrecht, incidenteel in Apeldoorn Functieomschrijving: De afdeling IV – Generieke Voorzieningen – Interactie Online is onderdeel van de keten Interactie. De missie van de keten is: “het faciliteren van de interactie met alle burgers, bedrijven en hun vertegenwoordigers om hen in staat te stellen aan hun fiscale verplichtingen te voldoen en aanspraak te maken op hun rechten.” De afdeling Interactie Online heeft een belangrijke bijdrage binnen deze keten. Dit door het ontwikkelen

Bekijk vacature »

.NET developer

Functie Als .NET ontwikkelaar ga jij aan de slag bij een van onze klanten actief in de High Tech Industrie. Onze klanten zijn voornamelijk gelokaliseerd in de omgeving van Eindhoven. Wij zijn erg selectief als het gaat om de projecten die wij accepteren en richten ons dan ook alleen op innovatieve en complexe projecten. Omdat onze klanten voornamelijk gespecialiseerd zijn in de machinebouw, werk jij ook vaak dicht tegen de machines aan. Ons team bestaat momenteel uit Embedded engineers, IOT developers en Cloud engineers. Wij werken voornamelijk aan Microsoft projecten waar er gebruik wordt gemaakt van WPF, UWP, .NET Core

Bekijk vacature »

PHP developer (Symfony, Doctrine)

Functie Als PHP developer wordt er een hoge mate van zelfstandigheid verwacht, maar ook dat je goed opereert in een team waar kennis wordt gedeeld en dingen als codereviews erg veel voorkomen. 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

Bekijk vacature »

Frontend Developer

Dit ga je doen Door ontwikkelen van het online platform Deel uitmaken van verschillende ontwikkelteams Meedenken over UI/UX vraagstukken Uitdragen van Front-end binnen de organisatie Hier ga je werken Deze organisatie, gevestigd in de omgeving van Amsterdam, is een grote onderwijs instelling met meerdere vestigingen en een groot aantal studenten. Zo telt deze organisatie +/- 35.000 gebruikers. Bij deze organisatie staat jouw ontwikkeling centraal en is er veel ruimte voor eigen initiatieven. In samenwerking met jouw team ga jij de online omgeving verder ontwikkelen. In de rol van Front end Developer zal jij 50% van jouw tijd werken in het

Bekijk vacature »

Fullstack Developer TOTO

Do you want to work with the latest technologies on the development of new systems and applications? Get moving and strengthen Nederlandse Loterij as a Fullstack Developer TOTO. Thanks to your efforts, complex business critical applications are always running smoothly. In this way, you directly contribute to a happy, healthy and sporty Netherlands. As a Fullstack Developer you score by: Taking ownership of the development cycle of an application in a large scale, high availability, geo redundant landscape Coaching your peer developers and safeguarding code quality Integrating the application with other components of the system using the available API’s Managing

Bekijk vacature »

Low-Code Expert/Developer: Power Platform Speciali

Bedrijfsomschrijving Als Low-Code Expert/Developer bij ons innovatieve bedrijf, neem je een cruciale rol op je in de creatie, ondersteuning en implementatie van diverse oplossingen met behulp van het veelzijdige Power Platform. Dit platform omvat Power Apps, Power BI, Power Automate, Power Virtual Agent en Azure Logic Apps. Het Power Platform biedt je de mogelijkheid om klanten te voorzien van naadloze integraties door op maat gemaakte oplossingen te creëren die compatibel zijn met (bijna) alle bestaande software-infrastructuren. Dankzij het uitgebreide scala aan toepassingen, krijg je de kans om als architect en projectleider van je eigen oplossing te fungeren. Dompel jezelf onder

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 »

Node.js developer

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

Bekijk vacature »

Software Developer

Dit ga je doen Ontwikkelen aan de software dat beschikbaar is op de substations; Ontwikkelen in C++, C, Python en JavaScript. Daarnaast op een Embedded Linux omgeving, opgebouwd met containers en DevOps; Meewerken aan cyber security (OWASP); Uitvoeren/bouwen van geautomatiseerde testen in samenwerking met de Quality Specialist; Vertalen van wensen van de klanten/business naar werkbare/duurzame oplossingen. Hier ga je werken Als Software Ontwikkelaar kom je te werken bij een organisatie gericht op de (internationale) energiemarkt, waar wordt gewerkt voor het verwerven en verwerken van realtime, high quality data. Er wordt gewerkt vanuit het hart van de substations en direct voor

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

15/01/2025 18:09:04
 
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.