Mail formulier defect

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Back End Developer

As a Back End developer at KUBUS you will be developing the (web) application and services of BIMcollab. You have a focus on the back end of our software, for which we mainly work with C# and .NET. We use a full-stack approach, which means that in addition to the back-end, you will also help with other parts of the code. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact

Bekijk vacature »

Junior Software developer

Functie Als junior .NET ontwikkelaar start jij in een compact team met drie ervaren .NET ontwikkelaars. Wij werken op projectbasis en begeleiden zelf het hele traject van A tot Z. Wij bieden jou dan ook een brede functie aan met veel technische uitdaging! Ons traject ziet er als volgt uit: 1) Wij analyseren de behoefte van onze klant 2) Wij werken de behoefte uit en vertalen dit naar technische werkzaamheden en maken een uren/kosten schatting; 3) Wij gaan aan de slag met het ontwikkelen van het product met directe feedback van de klant, zodat datgene gerealiseerd wordt, wat gewenst is;

Bekijk vacature »

APEX Ontwikkelaar in een team van Oracle Developer

Bedrijfsomschrijving Wij zijn op zoek naar een APEX Ontwikkelaar om onze opdrachtgever in Den Haag te versterken. In deze rol zul je verantwoordelijk zijn voor het ontwikkelen en onderhouden van de front-end van onze applicaties met behulp van Oracle Application Express (APEX). Je werkt aan zowel inhouse als externe projecten. De sfeer binnen het Oracle team is gemoedelijk en men probeert elkaar te helpen én van elkaar te leren. Zo ontstaat er een prettige en plezierige werksfeer waar ruimte is voor persoonlijke ontwikkeling en groei. Er wordt gewerkt met de meest nieuwe technologieën waardoor je kennis up-to-date blijft. Het bedrijf

Bekijk vacature »

Back end developer PHP

Functie Heb jij altijd al eens bij een bedrijf willen werken waar jij géén nummertje bent, die alleen maar uitvoerend werk doet? Dan zou je hier perfect passen! Tuurlijk, je werkt aan projecten voor grote of kleine bedrijven… Het enige verschil hier is, jouw mening telt hier écht. Jouw inbreng wordt gewaardeerd, serieus genomen en gebruikt. En vergeet niet, je werkt niet alleen aan deze projecten. Er werken in totaal ruim 25 developers en designers, onderverdeeld over 3 development teams. Voornamelijk bestaande uit Medior en Senior developers, die samen voor een inspirerende en ambitieuze omgeving zorgen. Hun visie is namelijk

Bekijk vacature »

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 »

Developer Front-end

Functie omschrijving Front-end Developer gezocht! Wij zijn op zoek naar een front-end developer voor een organisatie in de regio Veenendaal die de eindverantwoordelijkheid op zich neemt van alles wat met design te maken heeft. Je hebt in deze functie een adviserende rol hiervoor moet je beschikken over een grote dosis vakinhoudelijke kennis. Je creëert unieke concepten door samen met collega’s en klanten te overleggen over aangeleverde designs. Hiermee draag jij je steentje bij aan de groeiambities van de klant. Jij wordt het vaste aanspreekpunt voor klanten wanneer het gaat over planningen, hierin is het jouw taak om alle betrokkenen goed

Bekijk vacature »

Als PHP developer bijdragen aan beter onderwijs?

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

Bekijk vacature »

Software Programmeur PHP

Functie Ben jij op zoek naar een nieuwe uitdaging als PHP developer en zoek je een leuke platte organisatie? Lees dan snel verder! Voor een opdrachtgever in omgeving Capelle aan den IJssel dat zich gespecialiseerd heeft in het realiseren van veilige netwerkverbindingen zijn wij op zoek naar een leuke software developer ter versterking van het huidige team. Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen PHP, JAVA en Node.js. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn

Bekijk vacature »

C# .NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Ontwikkelen in Blazor; Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie. Hier ga je werken Binnen deze organisatie werken duizenden mensen binnen allerlei verschillende disciplines. Tevens hebben zij veel specialiteiten in huis, waaronder ook .Net Developers. Ter uitbreiding van een nieuw team en ter ondersteuning van het project zijn ze opzoek naar een nieuwe collega voor het team. Als C#.NET Developer zal jij je

Bekijk vacature »

Senior Java Developer

Als Senior Java Developer bij Sogeti ben je onderdeel van onze toonaangevende community die bestaat uit ruim 100 gepassioneerde Java professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze top-opdrachtgevers. Geen werkdag is hetzelfde! Je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfs kritische systemen voor onze klanten in regio Noordoost zoals DUO, ING, CJIB en Tendernet. Natuurlijk krijg jij de mogelijkheid je verder te certificeren in dit vakgebied. We organiseren regelmatig technische Meetups en doen veel aan kennisdeling. Sogetisten hebben plezier in hun werk en

Bekijk vacature »

Medior/Senior Python developer

Functie Jij als Senior Python developer hebt al ruime ervaring opgedaan. Bedrijven komen bij de organisatie om technische vraagstukken op te lossen. Jij als specialist bent dus de representatie van deze kwaliteit. Je zult de keuze krijgen tussen lange of korte projecten waarin je komt te werken in multidisciplinaire teams. Projecten die je gaat uitvoeren zijn zeer uitlopend. Zodoende kun je aan de ene kant kiezen voor een greenfield project en stroom je bij een ander project midden in een migratietraject in. Voor de ene klant ontwikkel je ene nieuwe portal en voor het andere project duik je veel meer

Bekijk vacature »

IT Infrastructuur Developer

IT Infrastructuur Developer Ben jij (bijna) klaar met je HBO studie in de richting van IT? Opzoek naar een spannende eerste baan, waar je ontzettend veel kan leren? Dan hebben wij de ultieme job voor jou! Voor een goede klant van ons in de financiële dienstverlening zijn wij opzoek naar een Junior Infrastructure Developer. Deze baan is een mooie kans om een sterke start te geven aan jouw carrière binnen de IT! De job Je werkt nauw samen met het Devops team, en zal je voornamelijk bezighouden met het automatiseren van infrastructure componenten. De componenten worden opgevraagd door het DevOps

Bekijk vacature »

C#.NET Developer

Functieomschrijving Voor een software ontwikkelaar in de omgeving van Vught zijn we op zoek naar een gemotiveerde C# ontwikkelaar. Deel jij hun passie voor development en dan vooral in C#.NET? Dan kan dit wel eens jouw droombaan zijn! Jouw werkzaamheden zullen er ongeveer als volgt uit gaan zien Door de wensen van de klant goed te begrijpen ga jij aan de slag dit om te zetten naar passende oplossingen en werk je deze uit tot een sterk eindproduct. Je gaat je bezighouden met de ontwikkeling van webapplicaties en websites, dit doe je door middel van ASP.NET, MVC Frameworks en C#.

Bekijk vacature »

.NET Developer

Functie omschrijving Net afgestudeerd en op zoek naar een leuke baan als developer? Zoek niet verder! Ik heb een functie beschikbaar als back-end developer, bij een leuk familiebedrijf. Je gaat werken met de Microsoft stack en de technieken C# en .NET. Verder maak je gebruik van MVC en Entity framework. SQL kent ook geen geheimen voor jou. Jouw verantwoordelijkheden: Nieuwe maatwerk software bouwen; API koppelingen bouwen; Applicaties en software optimaliseren; Back-end programmeren. Een erg uitdagende functie, met veel vrijheid. Je kan meerdere dagen thuis werken en als je op kantoor werkt wordt de lunch verzorgd. Heb je interesse, reageer dan

Bekijk vacature »

In-house .NET software developer

Functie omschrijving Ben jij op zoek naar een uitdagende in-house development functie? Maak jij graag hét verschil m.b.t. interne automatisering? Haal jij energie uit het automatiseren van processen voor je eigen collega's? Dan hebben wij de perfecte vacature voor je! Voor een gezellig Brabants familiebedrijf, zijn wij op zoek naar een .NET software developer. Je gaat in deze zelfstandige functie werken aan de ontwikkeling van eigen applicaties & en het koppelen van deze applicaties aan de ingekocht software. Jouw werkzaamheden zien er als volgt uit: Het management team signaleert behoeftes vanuit de business. Vervolgens worden deze behoeftes uitgewerkt en geprioriteerd.

Bekijk vacature »
Tim

Tim

29/10/2007 14:15:00
Quote Anchor link
Ik heb al een tijdje het onderstaande bestand mail.php voor mijn e-mail formulier. Het heeft altijd gewerkt, maar de laatste tijd werkt hij niet meer. Mailtjes komen niet aan, en het duurt een eeuwigheid eer dat het formulier eindelijk verwerkt is (verzonden, gecontroleerd).

Mijn tweede vraag is of iemand voor mij wat zou kunnen optimaliseren. Ik ben nog redelijk nieuw in het hele PHP-wereldje en durf erop te zweren dat ik bij het bewerken van deze code flink wat fouten heb gemaakt.
Zo werkt o.a. het (rood) highlighten van foute velden niet (behalve wanneer er een verboden woord is gebruikt), zou ik de verboden woorden-filter graag alleen op de velden $bericht en $onderwerp willen hebben en krijg ik het maar niet voor elkaar om de foutmelding van de woordenfilter (Woorden als: sex, drugs, viagra en dergelijke worden geblokkeerd.) bij de andere foutmeldingen in het rijtje te integreren (telefoon, naam, email etc.)

Dit is de code van mail.php. Het formulier kan ik jullie ook geven.

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
<?php
ob_start(); // Voor Cookie setten

// Config Gedeelte

$site = "website na foutmelding";
$wm_naam = "naaaam";                    // Webmaster naam
$wm_email = "[email protected]";        // Webmaster E-mail
$Anti_Spam = "5";

$fout_text = TRUE;                        // Bij Fout Text Rood maken ( TRUE voor aan, FALSE voor uit )
$fout_vakje = TRUE;                        // Bij Fout Border om Vakje Rood maken ( TRUE voor aan, FALSE voor uit )
$html = TRUE;                                // Een HTML email

// Hierna hoef je niks meer te veranderen!

$naam = $_POST['naam'];
$email = $_POST['email'];
$telefoon = $_POST['telefoon'];
$onderwerp = $_POST['onderwerp'];
$bericht = $_POST['bericht'];
$bericht_wrap = wordwrap ($bericht, 40, "\n", 1);

// IP van de verstuurder
if(getenv($_SERVER['HTTP_X_FORWARDED_FOR'])) {
    $ip = getenv($_SERVER['HTTP_X_FORWARDED_FOR']);
}
elseif(getenv($_SERVER['HTTP_CLIENT_IP'])) {
    $ip = getenv($_SERVER['HTTP_CLIENT_IP']);
}
else {
    $ip = $_SERVER['REMOTE_ADDR'];
}


$host = gethostbyaddr($ip);         // Host van verstuurder

if($html) {
// Headers
            $headers = "From: \"Contact Formulier\" <".$wm_email.">\r\n";
            $headers .= "Reply-To: \"".$naam."\" <".$email.">\n";
            $headers .= "Return-Path: Mail-Error <".$wm_email.">\n";
            $headers .= "MIME-Version: 1.0\n";
            $headers .= "Content-Transfer-Encoding: 8bit\n";
            $headers .= "Content-type: text/html; charset=iso-8859-1\n";
// Bericht zoals je die ontvangt
    $message = "
            <!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
            <html>
<head>
            <style type=\"text/css\">
            body {
            border-right: 5px;
            border-top: 5px;
            border-left: 5px;
            border-bottom: 5px;
            font: 10px Verdana, Arial, Helvetica, sans-serif;
            }
            table {
            font: 10px Verdana, Arial, Helvetica, sans-serif;
            }
            table, a:link {
            color: #000;
            text-decoration: none;
            }
            table, a:visited {
            color: #000;
            text-decoration: none;
            }
            table, a:hover {
            color: #000;
            font-weight: bold;
            text-decoration: none;
            }
            </style>
</head>
            
<body>
<table>
            <tr><td>Naam:</td><td>"
.$naam."</td></tr>
            <tr><td>Email:</td><td><a href=\"mailto:"
.$email."\">".$email."</a></td></tr>
            <tr><td>Tel:</td><td>"
.$telefoon."</td></tr>
            <tr><td>&nbsp;</td><td></td>
            </tr>
            <tr>
              <td>Onderwerp:</td>
              <td>"
.$onderwerp."</td>
            </tr>
            <br />
            <tr><td>Bericht:</td><td>"
.$bericht."</td>
            </tr>
            <tr><td colspan=\"2\">&nbsp;</td><td>&nbsp;</td>
            </tr>
            <br />
            <tr><td>Datum:</td><td>"
.date("d-m-Y H:i:s")."</td></tr>
            <tr><td>IP:</td><td><a href=\"http://sunny.nic.com/cgi-bin/whois?domain="
.$ip."\">".$ip."</a></td></tr>
            <tr><td>Host:</td><td>"
.$host."</td></tr>
            </table>
            
            </body>
            </html>"
;

    
}

// Pagina na foutmelding, verstuurd o.id.
?>



<html>
<head>
<title>Comsolid</title>

<head>
<style type="text/css">
<!--
.style5 {color: #4d4d4d; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 8pt; }
.style4 {color: red; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 8pt; }
-->
</style>
</head>

<?
// Controleer op verboden woorden
function filterContentType($bericht){

    $verbodenWoorden = array(    "porno",
                                "viagra",
                                "sex",
                                "fuck",
                                "porn",
                                "drugs",
                                "neuken",
                                "fucking",
                                "penis",
                                "vagina",
                                "cialis",
                                "levitra",
                                "cock",
                                "horny",
                                $bericht);
                                
    foreach ($_POST as $key => $value){
        foreach ($verbodenWoorden as $keyVB => $valueVB){
            if (stristr($value, $valueVB)) {
          
                echo "<strong><font class=\"style4\">Anti spam!</font></strong><BR><BR>
                <font class=\"style5\">Woorden als: sex, drugs, viagra en dergelijke worden geblokkeerd.<BR><BR>
                <a href=\"javascript:history.back()\">Ga terug</a></font>"
;
                exit;
            }
        }

        reset($verbodenWoorden);
    }

    return;
}

filterContentType();

// Mail Checker
function checkmail($email)
{

    $email_host = explode("@", $email);
    $email_host = $email_host[1];
    $email_resolved = gethostbyname($email_host);
    
    if($email_resolved == $email_host)
    {

        $valid = FALSE;
    }

    if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
    {

        $valid = TRUE;
    }

    else
    {
        $valid = FALSE;
    }

    return $valid;
}


// Functie om telefoonnummer te controleren
    function checktelefoon($telefoon)
    {

                // Verwijder eerst alle niet-nummerieke tekens
    $telefoon = ereg_replace( "[^0-9]", "", $telefoon );    
    
                // Controleer of de string bestaat uit cijfers van 0 tot 9
                // Controleer of de string bestaat uit 10 cijfers

                if(ereg ('^[0-9]{10}$', $telefoon))
        $valid = 1;
    return $valid;
    }



// kijken of het cookie bestaat, zoja dan wordt het formulier niet getoond.
if(!isset($_COOKIE['mailformulier']))
{

    // Alles Controleren Wanneer er op Verzenden wordt gedrukt
    if(isset($_POST['verzenden']))
    {

        $fout = "";
        if((empty($naam)) OR (strlen($naam) < 3) OR (eregi(">", $naam)))
        {

            $fout .= "U bent vergeten uw naam in te vullen! <BR><BR>";
            unset($naam);
            $fout_vakje_naam = "input_fout";
            $fout_text_naam = "text_fout";
        }

        if((empty($email)) OR (strlen($email) < 1) OR (eregi(">", $email)))
        {

            $fout .= "U bent vergeten uw e-mail adres in te vullen! <BR><BR>";
            unset($naam);
            $fout_vakje_naam = "input_fout";
            $fout_text_naam = "text_fout";
        }

        elseif(checkmail($email) == 0)
        {

            $fout .= "U heeft geen correct e-mail adres ingevuld! <BR><BR>";
            unset($email);
            $fout_vakje_email = "input_fout";
            $fout_text_email = "text_fout";
        }

         if((empty($telefoon)) OR (strlen($telefoon) < 1) OR (eregi(">", $telefoon)))
        {

            $fout .= "U bent vergeten uw telefoonnummer in te vullen! <BR><BR>";
            unset($email);
            $fout_vakje_telefoon = "input_fout";
            $fout_text_telefoon = "text_fout";
        }

       elseif(checktelefoon($telefoon) == 0)
        {

            $fout .= "U heeft geen correct telefoonnummer ingevuld! <BR><BR>";
            unset($telefoon);
            $fout_vakje_telefoon = "input_fout";
            $fout_text_telefoon = "text_fout";
        }

        if((empty($onderwerp)) OR (strlen($onderwerp) < 3) OR (eregi(">", $onderwerp)) )
        {

            $fout .= "U bent vergeten een onderwerp in te vullen! <BR><BR>";
            unset($onderwerp);
            $fout_vakje_onderwerp = "input_fout";
            $fout_text_onderwerp = "text_fout";
        }

        if(empty($bericht))
        {

            $fout .= "U bent vergeten een bericht in te vullen! <BR><BR>";
            unset($bericht);
            $fout_vakje_bericht = "input_fout";
            $fout_text_bericht = "text_fout";
        }

        elseif(strlen($bericht) < 6)
        {

            $fout .= "Uw bericht is te kort! <BR>";
            $fout_vakje_bericht = "input_fout";
            $fout_text_bericht = "text_fout";
        }

        if(!$fout_text)
        {

            unset($fout_text_naam);
            unset($fout_text_email);
            unset($fout_text_onderwerp);
            unset($fout_text_bericht);
        }

        if(!$fout_vakje)
        {

            unset($fout_vakje_naam);
            unset($fout_vakje_email);
            unset($fout_vakje_onderwerp);
            unset($fout_vakje_bericht);
        }

        if(!empty($fout))
        {

        echo "<font class=\"style4\"><strong>Foutje...</strong></font><font class=\"style5\"><BR><BR>$fout</font>"; // Weergeven van de fout(en) ?>

</p>
  </blockquote>
      
      <p align="left" class="style5"><a href="javascript:history.back()">
        Ga terug</a>
      
        </p>
</body></html>  

<?
        }
        else
        {
        mail($wm_email,$onderwerp,$message,$headers);
  
        // Bericht als mail succesvol is verzonden
?>


<html>
<head>
<style type="text/css">
<!--
.style5 {color: #4d4d4d; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 8pt; }
-->
</style>
</head>

<body>
<p align="left" class="style5"><strong>Uw mail is verzonden!</strong><br>
  <br>
  Bedankt voor uw e-mail! Wij nemen, indien nodig, zo spoedig mogelijk contact met u op.</p>
</body>
</html>

<?

        // cookie zetten tegen spam
        setcookie("mailformulier",1,time()+($Anti_Spam*60));

        // formulier wordt niet weer getoond
        $Formulier = FALSE;

        header("refresh:6;url=".$site."");
        }
    }
}

else {
    $Formulier = FALSE;
    ?>

<html>
<head>
<style type="text/css">
<!--
.style3 {color: #136bcc; font-family: Verdana, Arial, Helvetica, sans-serif; }
.style5 {color: #4d4d4d; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 8pt; }
-->
</style>
</head>

<body>
<p align="left" class="style5"><strong>Spam beveiliging!</strong></p>
<p align="left" class="style5">U kunt maar eens in de 5 minuten een e-mail versturen om spam-berichten te voorkomen. <br><br>
</p>
<p align="left" class="style5"><a href="javascript:history.back()">
        Ga terug</a>
      
        </p>
</body>
</html>


    <?
    header("refresh:6;url=".$site."");
}


if(!isset($Formulier))
{

?>


<?
}
?>


Alvast bedankt!!!
Tim
 
PHP hulp

PHP hulp

27/05/2026 04:34:51
 
- SanThe -

- SanThe -

29/10/2007 14:22:00
Quote Anchor link
$naam = $_POST['naam'];
Dit is zinloos. Kost alleen extra geheugen.

Later ga de $_POST door je filter halen maar $naam blijft dus ongefilterd.
 
Tim

Tim

29/10/2007 15:06:00
Quote Anchor link
Maar is het dan niet zo dat de controle van het vakje naam in zijn geheel niet meer werkt? Er zit namelijk ook een andere controle op het vakje naam. Of hij leeg is en een minimum aantal karakters heeft.
 
- SanThe -

- SanThe -

29/10/2007 15:26:00
Quote Anchor link
Jawel, maar de 'scheldwoorden' worden er niet uitgehaald.

Op regel 36 en 75 wordt ie al gebruikt en de check gebeurt pas later.
 
Tim

Tim

29/10/2007 16:02:00
Quote Anchor link
Ik heb het even geprobeerd, alleen krijg ik nu altijd de melding dat er geen naam ingevuld is, ook wanneer dit wel is gebeurt.

Ik heb ook geprobeerd wat er gebeurt als ik wat verboden woorden invul in het naam-veld, maar deze herkent hij nog steeds.
 
Roderik Roderik

Roderik Roderik

29/10/2007 16:35:00
Quote Anchor link
krijg je ook een of andere php foutmelding.
Zo ja? welke
 
Tim

Tim

29/10/2007 16:44:00
Quote Anchor link
Nee, die krijg ik niet. Geen enkel.
Ik ben er zojuist wel achter gekomen dat het probleem van niet aankomende mailtjes aan mijn host te verwijten was.

Nu zit ik alleen nog met de overige vragen.
 
Tim

Tim

30/10/2007 15:34:00
Quote Anchor link
Inmiddels is het één en ander opgelost, maar zit ik nog steeds met één probleempje.

De woorden-filter, wil ik net als de naam, e-mail, telefoon, onderwerp en bericht controle een foutmelding laten geven in datzelfde rijtje.

Dit is contact.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
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
<?
ob_start(); // Voor Cookie setten

// Headers

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");

// Config
$site = "www,kujsksdjf,com";    
$wm_naam = "lkugfdkgu";                
$wm_email = "[email protected]";        
$Anti_Spam = "5";                    
$fout_text = FALSE;                    // TRUE aan  FALSE uit )
$fout_vakje = TRUE;                    // TRUE aan  FALSE uit )
$html = TRUE;                        // HTML mail


$ip = $_SERVER['REMOTE_ADDR'];        // IP verstuurder
$host = gethostbyaddr($ip);         // Host verstuurder

// email controle

function checkmail($email)
{

    $email_host = explode("@", $email);
    $email_host = $email_host[1];
    $email_resolved = gethostbyname($email_host);
    
    if($email_resolved == $email_host)
    {

        $valid = FALSE;
    }

    if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
    {

        $valid = TRUE;
    }

    else
    {
        $valid = FALSE;
    }

    return $valid;
}


?>



<html>
<head>
<title>Comsolid</title>

<head>
<style type="text/css">
<!--
.style5 {color: #4d4d4d; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 8pt; }
.style4 {color: red; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 8pt; }
-->
</style>
</head>
<p align="justify" class="style5"><strong>blablabalballab </strong><br>
  <br>
blablabalbalablabalablablablalaba</p>

<?

// telefoonnummer controle
    function checktelefoon($telefoon)
    {

                // Verwijder eerst alle niet-nummerieke tekens
    $telefoon = ereg_replace( "[^0-9]", "", $telefoon );    
    
                // Controleer of de string bestaat uit cijfers van 0 tot 9
                // Controleer of de string bestaat uit 10 cijfers

                if(ereg ('^[0-9]{10}$', $telefoon))
        $valid = 1;
    return $valid;
    }
    
    

// kijken of het cookie bestaat, zoja dan wordt het formulier niet getoond.
if(!isset($_COOKIE['mailformulier']))
{

    if(isset($_POST['wis']))
    {

        foreach ($_POST as $key => $value)
        {

            unset($value);
        }

        header("Location: ".$_SERVER['PHP_SELF']."");
    }

    // Alles Controleren Wanneer er op Verzenden wordt gedrukt
    if(isset($_POST['verzenden']))
    {
        
        $naam = trim($_POST['naam']);
        $email = trim($_POST['email']);
        $telefoon = trim($_POST['telefoon']);
        $onderwerp = trim($_POST['onderwerp']);
        $bericht = trim($_POST['bericht']);
        $fout = "";

if($html) {
// Headers
            $headers = "From: \"Contact Formulier\" <".$wm_email.">\r\n";
            $headers .= "Reply-To: \"".$naam."\" <".$email.">\n";
            $headers .= "Return-Path: Mail-Error <".$wm_email.">\n";
            $headers .= "MIME-Version: 1.0\n";
            $headers .= "Content-Transfer-Encoding: 8bit\n";
            $headers .= "Content-type: text/html; charset=iso-8859-1\n";
// Bericht zoals je die ontvangt
    $message = "
            <!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
            <html>
<head>
            <style type=\"text/css\">
            body {
            border-right: 5px;
            border-top: 5px;
            border-left: 5px;
            border-bottom: 5px;
            font: 10px Verdana, Arial, Helvetica, sans-serif;
            }
            table {
            font: 10px Verdana, Arial, Helvetica, sans-serif;
            }
            table, a:link {
            color: #000;
            text-decoration: none;
            }
            table, a:visited {
            color: #000;
            text-decoration: none;
            }
            table, a:hover {
            color: #000;
            font-weight: bold;
            text-decoration: none;
            }
            </style>
</head>
            
<body>
<table>
            <tr><td>Naam:</td><td>"
.$naam."</td></tr>
            <tr><td>Email:</td><td><a href=\"mailto:"
.$email."\">".$email."</a></td></tr>
            <tr><td>Tel:</td><td>"
.$telefoon."</td></tr>
            <tr><td>&nbsp;</td><td></td>
            </tr>
            <tr>
              <td>Onderwerp:</td>
              <td>"
.$onderwerp."</td>
            </tr>
            <br />
            <tr><td>Bericht:</td><td>"
.$bericht."</td>
            </tr>
            <tr><td colspan=\"2\">&nbsp;</td><td>&nbsp;</td>
            </tr>
            <br />
            <tr><td>Datum:</td><td>"
.date("d-m-Y H:i:s")."</td></tr>
            <tr><td>IP:</td><td><a href=\"http://sunny.nic.com/cgi-bin/whois?domain="
.$ip."\">".$ip."</a></td></tr>
            <tr><td>Host:</td><td>"
.$host."</td></tr>
            </table>
            
            </body>
            </html>"
;
            
        }

        else
        {
            $bericht_wrap = wordwrap ($bericht, 40, "\n", 1);
            // Headers
            $headers = "From: \"Contact Formulier\" <".$wm_naam.">\n";
            $headers .= "MIME-Version: 1.0\n";
            $headers .= "Content-type: text/plain; charset='iso-8859-1'\n";
        
            // Bericht
            $message = "Naam: ".$naam."        \n";
            $message .= "E-mail: ".$email."     \n";
            $message .= "Bericht:\n".$bericht_wrap."     \n ";
            $message .= "               \n ";
            $message .= "Datum: ".date("d-m-Y H:i:s")." \n";
            $message .= "------------------------------------------------------- \n ";
            $message .= "IP: ".$ip."                    \n ";
            $message .= "Host: ".$host."                \n ";
      
        }

if((empty($naam)) OR (strlen($naam) < 3) OR (eregi(">", $naam)))
        {

            $fout .= "Geen naam! <BR>";
            unset($naam);
            $fout_vakje_naam = "input_fout";
            $fout_text_naam = "text_fout";
        }

        if((empty($email)) OR (strlen($email) < 1) OR (eregi(">", $email)))
        {

            $fout .= "Geen e-mail! <BR>";
            unset($email);
            $fout_vakje_email = "input_fout";
            $fout_text_email = "text_fout";
        }

        elseif(checkmail($email) == 0)
        {

            $fout .= "Fout e-mail! <BR>";
            unset($email);
            $fout_vakje_email = "input_fout";
            $fout_text_email = "text_fout";
        }

         if((empty($telefoon)) OR (strlen($telefoon) < 1) OR (eregi(">", $telefoon)))
        {

            $fout .= "Geen telefoonnummer! <BR>";
            unset($telefoon);
            $fout_vakje_telefoon = "input_fout";
            $fout_text_telefoon = "text_fout";
        }

       elseif(checktelefoon($telefoon) == 0)
        {

            $fout .= "Fout telefoonnummer! <BR>";
            unset($telefoon);
            $fout_vakje_telefoon = "input_fout";
            $fout_text_telefoon = "text_fout";
        }

        if((empty($onderwerp)) OR (strlen($onderwerp) < 3) OR (eregi(">", $onderwerp)) )
        {

            $fout .= "Geen onderwerp! <BR>";
            unset($onderwerp);
            $fout_vakje_onderwerp = "input_fout";
            $fout_text_onderwerp = "text_fout";
        }

        if(empty($bericht))
        {

            $fout .= "Geen bericht! <BR>";
            unset($bericht);
            $fout_vakje_bericht = "input_fout";
            $fout_text_bericht = "text_fout";
        }

        elseif(strlen($bericht) < 6)
        {

            $fout .= "Te kort bericht! <BR>";
            $fout_vakje_bericht = "input_fout";
            $fout_text_bericht = "text_fout";
        }

        if(!$fout_text)
        {

            unset($fout_text_naam);
            unset($fout_text_email);
            unset($fout_text_telefoon);
            unset($fout_text_onderwerp);
            unset($fout_text_bericht);
        }

        if(!$fout_vakje)
        {

            unset($fout_vakje_naam);
            unset($fout_vakje_email);
            unset($fout_vakje_telefoon);
            unset($fout_vakje_onderwerp);
            unset($fout_vakje_bericht);
        }

        if(!empty($fout))
        {

            echo "<img src=\"../images/icons/fail.gif\"><font class=\"style4\"><strong> Fout bij invullen.</strong></font><BR><BR>"; // Weergeven van de fout(en)
        }
        else
        {
            mail($wm_email,$onderwerp,$message,$headers);
    
            // Bericht als mail succesvol is verzonden
            
            echo "<img src=\"../images/icons/success.gif\"><font class=\"style5\"><strong> Uw bericht is succesvol verzonden!<BR><BR></strong>";
            echo "Bedankt voor uw e-mail! Wij nemen, indien nodig, zo spoedig mogelijk contact met u op.</font>";
    
            // cookie zetten tegen spam
            setcookie("mailformulier",1,time()+($Anti_Spam*60));
    
            // formulier wordt niet weer getoond
            $Formulier = TRUE;
    
          
        }
    }
}

else {
    $Formulier = FALSE;
    echo "<img src=\"../images/icons/fail.gif\"><font class=\"style4\"><strong> Spam Beveiliging</strong></font><BR><BR>";
    echo "<font class=\"style5\">U kunt maar eens in de $Anti_Spam minuten een e-mail versturen om spam berichten te voorkomen!</font>";
}


if(!isset($Formulier))
{

?>


<html>
<head>
 <link href="../css/style_form.css" rel="stylesheet" type="text/css" />
<title>Contact Formulier</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

<body>
  <table class="tabel" border="0" cellpadding="5" cellspacing="0"  width="300">      
    <tr>
      <td><form method="post" action="<? $_SERVER['PHP_SELF']; ?>"><tr>
           <td bgcolor="#FFFFFF"><div align="left">
             <table align="left">
               <tr>
                 <td class="style5"><label for="naam">Naam:</label></td>
                 <td><input name="naam" type="text" class="<? echo $fout_vakje_naam; ?>" id="naam" value="<? if (!empty($naam)) { echo stripslashes($naam); } ?>" size="25" maxlength="30" /></td>
               </tr>
               <tr>
                 <td class="style5"><label for="email">Email:</label></td>
                 <td><input name="email" type="text" class="<? echo $fout_vakje_email; ?>" id="email" value="<? if (!empty($email)) { echo $email; } ?>" size="25" maxlength="30" /></td>
               </tr>
               <tr>
                 <td class="style5"><label for="telefoon">Tel. nr.:</label></td>
                 <td><input name="telefoon" type="text" class="<? echo $fout_vakje_telefoon; ?>" id="telefoon" value="<? if (!empty($telefoon)) { echo $telefoon; } ?>" size="25" maxlength="30" /></td>
               </tr>
               <tr>
                 <td class="style5"><label for="onderwerp">Onderwerp:</label></td>
                 <td><input name="onderwerp" type="text" class="<? echo $fout_vakje_onderwerp; ?>" id="onderwerp" value="<? if (!empty($onderwerp)) { echo stripslashes($onderwerp); } ?>" size="25" maxlength="30" /></td>
               </tr>
               <tr>
                 <td valign="top" class="style5"><label for="bericht">Bericht:</label></td>
                 <td><textarea id="bericht" name="bericht" class="<? echo $fout_vakje_bericht; ?>" cols="40" rows="7"><? if (!empty($bericht)) { echo stripslashes($bericht); } ?></textarea></td>
               </tr>
               <tr>
                 <td></td>
                 <td><input name="verzenden" type="submit" class="style5" id="verzenden" value="Verzenden" />
                     <input name="wis" type="reset" class="style5" id="wis" value="Wis velden" />
                 </td>
               </tr>
             </table>
             <br>
           </div></td>
          </tr>
          </form>
</tr>
    
</body>
</html>
<?
}
?>




Dit is de functie om bepaalde woorden te filteren. Deze wil ik er graag in hebben (geen probleem), maar de foutmelding ("Woorden als: sex, drugs, viagra en dergelijke worden geblokkeerd.") wil ik graag in het rijtje van de andere fouten (zie contact.php).


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?
// Controleer op verboden woorden
function filterContentType($bericht){

    $verbodenWoorden = array(    "porno",
                                "viagra",
                                "sex",
                                "fuck",
                                "porn",
                                "drugs",
                                "neuken",
                                "fucking",
                                "penis",
                                "vagina",
                                "cialis",
                                "levitra",
                                "cock",
                                "horny",
                                $bericht);
                                
    foreach ($_POST as $key => $value){
        foreach ($verbodenWoorden as $keyVB => $valueVB){
            if (stristr($value, $valueVB)) {
          
                echo "<strong><font class=\"style4\">Anti spam!</font></strong><BR><BR>
                <font class=\"style5\">Woorden als: sex, drugs, viagra en dergelijke worden geblokkeerd.<BR><BR>
                <a href=\"javascript:history.back()\">Ga terug</a></font>"
;
                exit;
            }
        }

        reset($verbodenWoorden);
    }

    return;
}

filterContentType();?>
Gewijzigd op 01/01/1970 01:00:00 door Tim
 
Frank -

Frank -

30/10/2007 15:38:00
Quote Anchor link
Versturen van email, ik ga vanaf nu http://www.swiftmailer.org/ gebruiken (gebruikte phpmailer). Dit ziet er lekker eenvoudig uit en werkt tot nu toe prima.

Dat staat overigens los van het filter dat je wilt gebruiken.
 



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.