Toon posts:

[PHP] contact formulier (poging 2)

Pagina: 1
Acties:
  • 79 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik wil een php contact formulier maken en ben op zoek naar info om dit op z'n best mogelijke manier te realiseren.

Ik heb gekeken op http://www.phpfreakz.nl en http://www.phphulp.nl waar een aantal contactformulieren staan, maar deze worden zo negatief bekritiseerd dat ik twijfel of dit de beste keus is.

Qua uiterlijk ben ik nu het meest gecharmeerd van deze http://www.phphulp.nl/php/scripts/1/514/ , maar dan zonder bestand upload, maar hier tevens veel negatieve kritiek.

Ik heb tevens gekeken op http://www.hotscripts.com...orm_Processors/index.html, maar welke is daar de beste.

Dus qua uiterlijk weet ik wel wat ik wel, maar qua php contact formulieren “standaard” (wat dat dan ook mag zijn), weet ik niet waar ik moet zoeken en of aanhouden.

Dus ik zoek een bepaalde standaard/class waarop ik verder kan borduren. Dus dat het goed zit betreft veiligheid/spam/controle/enz…

Snappie..

En natuurlijk alvast bedankt voor jullie tijd....... ;)

  • Megamind
  • Registratie: Augustus 2002
  • Laatst online: 10-09 22:45
Tja,

Een contact formulier is wel 1 van de simpelste dingen om te maken :)

Neem gewoon een script en bestudeer deze goed en verbeter evt de veiligheid. Als je alleen maar wat dingen door mailt dan valt er weinig te fixen aan de veiligheid...

  • TERW_DAN
  • Registratie: Juni 2001
  • Niet online

TERW_DAN

Met een hamer past alles.

Een contactform is redelijk makkelijk te maken. Je hebt eigenlijk maar 2 dingen nodig.
1. een form waarop je de veldjes kunt invoeren.
2. een stukje code die de ingevoerde velden in 1 variabele zet en deze vervolgens verstuurd dmv de mail() functie.

Wat dat betreft kun je het redelijk makklijk maken..

PHP:
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
if ($_POST[Naam] == ''){$error_msg .="U heeft uw naam niet ingevoerd.<br>";}
if ($titel == 'T'){$error_msg .="U heeft uw titel niet aangegeven.<br>";}
if ($_POST[Email] == ''){$error_msg .="U heeft uw emailadres niet ingevoerd.<br>";}
if (!ereg('^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$', $_POST['Email'])){$error_msg .="U heeft geen geldig e-mailadres ingevoerd.<br>";}
if ($_POST[Adres] == ''){$error_msg .="U heeft uw adres niet ingevoerd.<br>";}
if ($_POST[Postcode] == ''){$error_msg .="U heeft uw postoce niet ingevoerd.<br>";}
if ($_POST[Plaats] == ''){$error_msg .="U heeft uw plaats niet ingevoerd.<br>";}
if ($_POST[Telefoon] == ''){$error_msg .="U heeft uw telefoon niet ingevoerd.<br>";}
if ($_POST[Bericht] == ''){$error_msg .="U heeft uw bericht niet ingevoerd.<br>";}

if($error_msg) { echo "Het bericht kon om de volgende reden niet worden verwerkt:<br><br>";
echo $error_msg;
echo "<br>Klik aub op <a href=javascript:history.back(1)>vorige</a> en vul alle velden in."; }

else {

// verzend details -- email adres veranderen!!
$recipient = "emailadres!";
$subject = "Een reactie via internet";
$header = "From: " . $email . "\n";
$mail_body = "Het contactformulier werd op " . date("d-m-Y") . " om " . date("H:i") . " uur ingevuld.\n";
$mail_body .= "De volgende gegevens zijn ontvangen:\n\n";
$mail_body .= "Titel: " . $titel . "\n";
$mail_body .= "Naam: " . $Naam . "\n";
$mail_body .= "Organisatie: " . $Bedrijfsnaam . "\n";
$mail_body .= "Adres: " . $Adres . "\n";
$mail_body .= "Postcode: " . $Postcode . "\n";
$mail_body .= "Plaats: " . $Plaats . "\n";
$mail_body .= "Telefoon: " . $Telefoon . "\n";
$mail_body .= "Fax: " . $Fax . "\n";
$mail_body .= "E-mailadres: " . $Email . "\n\n";
$mail_body .= "Kent kaamps van: " . $kent . "\n";
$mail_body .= $Bericht . "\n\n  Einde van het automatisch gegenereerde bericht";

mail ($recipient, $subject, $mail_body, $headers);
// einde verzend details
?>

Bedankt voor het invullen van het contactformulier, wij nemen zo spoedig mogelijk contact met u op.<BR><BR>



<?
}
?>


Dit is een dingetje dat ik hier heb liggen en dat werkt prima. Het is vast niet het beste form, maar hiermee moet het je toch lukken

  • LPEspecial
  • Registratie: September 2004
  • Laatst online: 15-07-2024
Wat je precies wilt is me nog niet duidelijk. Contact kan zijn dat de gebruiker een of meerdere tekstvelden invult en op een 'Submit' knop drukt. Wat er dan moet gebeuren is me niet duidelijk.

Je kun dan besluiten om het direct op je server te verwerken en in een database te stoppen. Ook kun je beslissen om de informatie te mailen naar een email adres (niet zichtbaar voor de gebruiker).

De laatste optie gebruik ik zelf op enkele websites. Voordeel is dat de reacties direct in een mailbox terecht komen, zodat de 'helpdesk' makkelijk kan reageren vanuit een voor hun bekende applicatie. Ook zorgt dit ervoor dat de database niet erg vervuild wordt.

Als het de bedoeling is om een tracking systeem voor problemen c.q. opmerkingen te maken dan zou ik ervoor kiezen om hiervoor een aparte database te maken, met een eventueel in PHP geprogrammeerde omgeving daarvoor. Dan moet je de problemen/opmerkingen direct in die database zetten met als status 'nieuw'.

Als je ervaring hebt met PHP kun je een aantal scripts doorkijken en daar zien hoe bepaalde problemen zijn opgelost.
Als je geen ervaring hebt met PHP zou ik eerst beginnen met wat algemene tutorials. Die zijn er genoeg te vinden.

PS: Tijdens het intikken waren er al een aantal reacties gekomen.

LPEspecial


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 14:25

Janoz

Moderator Devschuur®

!litemod

Tja, ook dit topic gaat op slot omdat dit niet de bedoeling is. Zoals NMe de vorige keer ook al aangegeven heeft is Programming vooral gericht op het zelf programmeren. Het is hier dan ook niet de bedoeling om om kant en klare oplossingen te vragen. Dat noemen wij een scriptrequest (http://gathering.tweakers...es/1104694#scriptrequests).

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Dit topic is gesloten.