Scripts

contact formulier

Een woord van dank naar m'n maatje Niels :-) Zonder Niels had ik dit zeker niet gered en zeker ook zijn inmense geduld heb ik menigmaal ernstig op proef gesteld. Ook heb ik de css toegevoegd maar goed dit kan je ook weglaten of je eigen gebruiken. Het is meer als leidraad voor diegene die dit nog niet heeft en graag een voorbeeld wil. Voor het voorbeeld van het formulier heb ik m'n site neergezet en dan bovenaan in het menu kies je mail en voila het formulier. Verder kan er een hoop veranderd worden of anders of weet ik wat. Dit is mijn insteek en verwoording van mijn gedachtes en heb je zelf een betere of zie je deze niet zitten dan zet jouw versie hier on-line dan kunnen we die gaan bekijken :-)

contact-formulier
[code]************************verbinding.php**************************
<?php
	// Open de database connectie
	$link = mysql_connect ("localhost", "jouw_accountnaam", "jouw_wachtwoord")
	or die ("Er kan geen verbinding worden gemaakt met de database");
	
	// Selecteer de juiste database
	$res = mysql_select_db("jouw_databasenaam", $link);
	if (!$res){
		// er is een fout opgetreden bij het selecteren
		echo "Er is een fout opgetreden bij het openen van de database, probeer het later nog eens";
	}
?>

***************************mail.php****************************
<?php
session_start (); 

// dit is de database verbinding
include ("include/verbinding.php");

// deze staat hieronder geschreven en kan je wegslashen wanneer je niet wil
include ("include/functions.php");

// zet de variabelen neer die ik ga gebruiken!!
$strError 		= "";
$Naam		= "";
$Email		= "";
$Adres		= "";
$Postcode		= "";
$Woonplaats	= "";
$Tel		= "";
$Bericht		= "";
$EmailCheck 	= "";
$To		= "";
$Subject		= "";
$IP		= $_SERVER['REMOTE_ADDR'];


// kijkt of er data is gepost!! dus zeg maar of er op de knop verzenden is geklikt
// zo ja, gaat ie in de if dingen uitvoeren
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
//kijk of de variabelen bestaan, zo ja geef ik daar een naam aan
	if(isset($_POST['Naam']))		{ $Naam = $_POST['Naam']; }
	if(isset($_POST['Email']))		{ $Email = $_POST['Email']; }
	if(isset($_POST['Adres']))		{ $Adres = $_POST['Adres']; }
	if(isset($_POST['Postcode']))	{ $Postcode = $_POST['Postcode']; }
	if(isset($_POST['Woonplaats']))	{ $Woonplaats = $_POST['Woonplaats']; }
	if(isset($_POST['Tel']))		{ $Tel = $_POST['Tel']; }
	if(isset($_POST['Bericht']))	{ $Bericht = $_POST['Bericht']; }
	if(isset($_POST['To']))			{ $To = $_POST['To']; }
	if(isset($_POST['Subject']))	{ $Bericht = $_POST['Bericht']; }
	
                // Toon het ip adres van de bezoeker
	if(isset($_POST['IP']))			{ $IP			= $_SERVER['REMOTE_ADDR']; }
	
                // zijn de checks die ik uitvoer voor email en postcode
	$EmailCheck 		= "^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$";
	$PostcodeCheck      = "^[1-9]{1}[0-9]{3}[ ]{0,1}[a-zA-Z]{2}$";
	
	// als er niks bij bericht is ingevult geef error	
	if($Bericht == "")
	{ $strError = "U moet wel een bericht invullen"; }
	
	// als er niks bij postcode is ingevult geef error		
	if($Postcode == "")
	{$strError = "U moet wel een postcode invoeren";
	// als er wel wat is ingevult check dat of het wel met 4 cijfers en 2 letters is
	}else 
	{ if(!eregi($PostcodeCheck, $Postcode))
		{ $strError = "U moet wel een geldige postcode invoeren"; }
	}
	// als er niks bij email is ingevult geef error	
	if($Email == "")
	{ $strError = "U moet wel een email adres opgeven";
	}else 
	// als er wel wat is ingevult check of het een geldig email adres is in hoevere dat kan natuulijk!!
	{ if(!eregi($EmailCheck, $Email))
		{ $strError = "U moet wel een geldige email opgeven"; } 
	}
	// als er niks bij naam is ingevult geef error	
	if($Naam == "")
	{ $strError = "U moet wel u naam invullen"; }
	// als er geen errors zijn mag ie de mail gaan versturen
	if($strError == "")
	{
		$Mail ="
************************************************************
Naam		: $Naam
Email   	: $Email
Adres		: $Adres
Postcode	: $Postcode
Woonplaats	: $Woonplaats
Tel.		: $Tel
IP			: $IP
Bericht 	:

$Bericht
************************************************************";
	// mail , naar, onderwerp, en de inhoud naar jou toe
	// de $TO en $Subject kan je veranderen in het form onderaan.
	mail ($To, $Subject, $Mail);
	$_SESSION['Naam'] = $Naam;
	// als de mail goed is verstuurd wordt je automatisch naar bedankt.php gestuurd!!
	// vooropgesteld dat je die hebt anders zet je er // voor
	header('location: bedankt.php');
	
	}
}

?>

<html>
<head>
<title>contactformulier</title>
<link href="../css/opmaak.css" type="text/css" rel="stylesheet">
<link rel="shortcut icon" href="favicon.ico">
<style type="text/css">
<!--
.style1 {
	font-family: Verdana,Trebuchet MS, sans-serif;
	font-size: 12px;
}
-->
</style>
<meta http-equiv="imagetoolbar" content="no">
</head>
<body bgcolor="fffffff" class="bgleft">
<div align="center">&nbsp;
<table border="0" align="center" valign="top" cellpadding="0" cellspacing="0" width="95%" height="95%" class="tekst">
		<tr>
			<td align="center" valign="top">
			<br>Dank U wel voor het bezoeken van onze site!
			<br>Uw reactie is van harte WELKOM!
			<br>
			<br>Vul het formulier en klik op Verstuur als het klaar is om te verzenden.
			<br>
			<br>
			<?php echo "<b>" .$strError."</b>"; ?>
<div align="center">
  <form name="form1" method="post" action="">
  <input type = 'hidden' name = 'To' value = '[email protected]'>
  <input type = 'hidden' name = 'Subject' value = 'mail van jouw website'>
    <table align="left" valign="top" width="70%" cellpadding="0" cellspacing="0" border="0" class="tekst">
      <tr>
  	  	<td colspan="3"><input type='hidden' name='IP' value='" . $IP . "'></td>
  	  </tr>
      <tr>
        <td width="20%" class="style1">Naam*</td>
        <td width="80%"><input name="Naam" type="text" class="style1" value="<?= $Naam ?>"></td>
      </tr>
      <tr>
        <td class="style1">Email*</td>
        <td><input name="Email" type="text" class="style1" value="<?= $Email ?>"></td>
      </tr>
      <tr>
        <td class="style1">Adres</td>
        <td><input name="Adres" type="text" class="style1" value="<?= $Adres ?>"></td>
      </tr>
      <tr>
        <td class="style1">Postcode*</td>
        <td><input name="Postcode" type="text" class="style1" value="<?= $Postcode ?>"></td>
      </tr>
      <tr>
        <td class="style1">Woonplaats</td>
        <td><input name="Woonplaats" type="text" class="style1" value="<?= $Woonplaats ?>"></td>
      </tr>
      <tr>
        <td class="style1">Telefoon</td>
        <td><input name="Tel" type="text" class="style1" value="<?= $Tel ?>"></td>
      </tr>
      <tr>
        <td class="style1">Bericht*</td>
        <td><textarea name="Bericht" cols="50" rows="15"><?= $Bericht ?></textarea></td>
      </tr>
      <tr>
        <td>&nbsp;</td>
        <td><div align="center">
          <input type="submit" name="Submit" value="Verstuur">
        </div></td>
      </tr>
    </table>
      <tr>
        <td align="center"><p class="smallnavigation">
        <br><br>Even een opmerking:
        <br>indien u dit formulier verstuurt mag u zeker een reactie verwachten.
        <br>Blijft een reactie uit,verstuurt u nogmaals de mail.
        <br>Er is dan een grote kans dat wij de mail niet hebben ontvangen.
        <br>Of neem telefonisch contact met ons op: (+31) 0123 - 123456</p></td>
     </tr>
     <tr>
        <td align="center"><br><br><p class="smallnavigation"><?php footer(); ?></p></td>
     </tr>
    </table></div>
  </form>
</div>
</body>
</html>
*****************************functions.php************************
Deze is optioneel en kan je ook weglaten maar dan wel onder aan de pagina mail.php weghalen!!!! :
<tr>
        <td align="center"><br><br><p class="smallnavigation"><?php footer(); ?></p></td>
<?php 

Hier het script:

<?php
function footer()
{
	echo "<table width=\"100%\" align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"smallnavigation\">";	
	echo "<tr><td align=\"center\"><b>Copyright &copy;2000-2005 Lissy Design. All rights Reserved.</b></tr></td>";
	echo "</table>";
}

?>


*************************verbinding.php************************

<?php
	// Open de database connectie
	$link = mysql_connect ("localhost", "jouw_gebruikersnaam", "jouw_wachtwoord")
	or die ("Er kan geen verbinding worden gemaakt met de database");
	
	// Selecteer de juiste database
	$res = mysql_select_db("jouw_databasenaam", $link);
	if (!$res){
		// er is een fout opgetreden bij het selecteren
		echo "Er is een fout opgetreden bij het openen van de database, probeer het later nog eens";
	}
?>

**************************bedankt.php********************* 
<?php
session_start(); 
?>
<html> 
<head> 
<title>jouw titel</title> 
</head> 
<body bgcolor="fffffff"> 
<div align="center"> 
<?php 
include ("../include/db.php"); 

echo "<table width=\"50%\" align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"tekst\">";     
  echo "<tr><td align=\"center\"><br><br>Bedankt voor uw eMail bericht ".$_SESSION['Naam']." <br>Indien U dit wenst en hebt aangegeven nemen wij zo snel mogelijk contact met U op.<br><br>Even een opmerking:<br>indien u dit formulier verstuurt, mag u zeker een reactie verwachten.<br>Mocht dit niet zo zijn wilt u dan gewoon even telefoneren (010-jouw nummer),<br>want dat betekent dat de virusscanner uw mail heeft onderschept.</tr></td>"; 
  echo "</table>"; 
   
  echo '<meta http-equiv="Refresh" content="5; url=home.php">'; 
   
  ?> 
</div> 
</body> 
</html> 

***************************opmaak.css*************************

body {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-size : 12px;
	font-style : normal;
	font-weight : lighter;
	color: #000000;
	scrollbar-face-color: #ffffff;
	scrollbar-highlight-color: #ffffff;
	scrollbar-shadow-color: #ffffff;
	scrollbar-3dlight-color: #ffffff;
	scrollbar-arrow-color: #000000;
	scrollbar-track-color: #ffffff;
	scrollbar-darkshadow-color: #000000;
	background : #000000;
}
.tekst {
	font-family : Verdana;
	font-size : 12px;
	font-style : normal;
	font-weight : normal;
	color: #000000;
}
.small {
	font-family : Verdana;
	font-size : 8px;
	font-style : normal;
	font-weight : normal;
	color: #000000;
}
.banner {
	font-family : Verdana;
	font-size : 16px;
	font-style : normal;
	font-weight : bold;
	color: #ffffff;
}
.smallnavigation {
	font-family: "Verdana"; font-size: xx-small
}
.box {
	border: 1;
	border-color: 004444;
	border-style: ;
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-size: 12px;
	background-color: transparent;
}
.bgtijdelijk {
	background : #ffffff url(../images/tijdelijk.jpg) no-repeat left;
}
.bg
{
	background : #ffffff url(../images/bg.jpg) no-repeat fixed;
}
.bgbanner   {
	background : #ffffff url(../images/banner.jpg) no-repeat;
}
.bgmain  {
	background : #ffffff url(../images/main_image.jpg) repeat;
}
.bgcontact  {
	background : #ffffff url(../images/contact.jpg) no-repeat fixed;
}
.bghome  {
	background : #ffffff url(../images/home.jpg) no-repeat fixed;
}
.bgright {
	background : #ffffff url(../images/right.jpg) no-repeat fixed;
}
.bgleft {
	background : #ffffff url(../images/left.jpg) repeat;
}

A, td:link {
	font-size:10px;
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	text-decoration : none;
	color: #000000;
	font-weight : bold;
}
A:hover {
	color: #85177c; 
	font-weight: bold;
}

 
.bgintro {
	background-attachment: fixed;
	background-color: #ffffff;
	background-image: url(../images/bgintro.jpg);
	background-repeat: no-repeat;
	background-position: center;
}

TEXTAREA 
{ 
border: 1px dashed; 
background-color: #FFFFFF; 
color: #000000; 
font size: 12pt; 
} 
?>[/code]

Reacties

0
Nog geen reacties.