Nieuws:

We zijn er weer.

Na lange tijd van afwezigheid zijn we er weer  :laugh:
We hebben alle wachtwoorden gereset, je oude wachtwoord werkt niet meer.Je moet via het "wachtwoord vergeten"-linkje je wachtwoord resetten. Je krijgt hiervoor een mailtje op het adres dat je bij ons geregistreerd hebt.

De komende tijd zijn we nog druk bezig om de rest van de site op te bouwen, dus het kan zijn dat sommige onderdelen (tijdelijk) niet werken.

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: IP Adres verborgen meezenden in een Contact Form!  (gelezen 3345 keer)

Offline Mannetje

  • Lid
  • Steunpunt: Nee
IP Adres verborgen meezenden in een Contact Form!
« Gepost op: 2011/10/24, 15:23:12 »
<?php
if(isset($_POST['email'])) {
     
    
// CHANGE THE TWO LINES BELOW
    
$email_to "xxx@hotmail.nl";
     
    
$email_subject "Contact Form";
     
     
    function 
died($error) {
        
// your error code can go here
        
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
        echo 
"These errors appear below.<br /><br />";
        echo 
$error."<br /><br />";
        echo 
"Please go back and fix these errors.<br /><br />";
        die();
    }
     
    
// validation expected data exists
    
if(!isset($_POST['first_name']) ||
        !isset(
$_POST['last_name']) ||
        !isset(
$_POST['email']) ||
        !isset(
$_POST['telephone']) ||
        !isset(
$_POST['domicile']) ||
        !isset(
$_POST['comments'])) {
        
died('We are sorry, but there appears to be a problem with the form you submitted.');      
    }
     
    
$first_name $_POST['first_name']; // required
    
$last_name $_POST['last_name']; // required
    
$email_from $_POST['email']; // required
    
$telephone $_POST['telephone']; // required
    
$domicile $_POST['domicile']; // required
    
$comments $_POST['comments']; // required
     
    
$error_message "";
    
$email_exp '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
  if(!
preg_match($email_exp,$email_from)) {
    
$error_message .= 'The Email Address you entered does not appear to be valid.<br />';
  }
    
$string_exp "/^[A-Za-z .'-]+$/";
  if(!
preg_match($string_exp,$first_name)) {
    
$error_message .= 'The First Name you entered does not appear to be valid.<br />';
  }
  if(!
preg_match($string_exp,$last_name)) {
    
$error_message .= 'The Last Name you entered does not appear to be valid.<br />';
  }
  if(
strlen($comments) < 2) {
    
$error_message .= 'The Comments you entered do not appear to be valid.<br />';
  }
  if(
strlen($error_message) > 0) {
    
died($error_message);
  }
    
$email_message "Er is het volgende ingevuld op de website.\n\n";
     
    function 
clean_string($string) {
      
$bad = array("content-type","bcc:","to:","cc:","href");
      return 
str_replace($bad,"",$string);
    }
     
    
$email_message .= "Voornaam: ".clean_string($first_name)."\n";
    
$email_message .= "Achternaam: ".clean_string($last_name)."\n";
    
$email_message .= "Emailadres: ".clean_string($email_from)."\n";
    
$email_message .= "Telefoonnummer: ".clean_string($telephone)."\n";
    
$email_message .= "Woonplaats: ".clean_string($domicile)."\n";
    
$email_message .= "Bericht: ".clean_string($comments)."\n";
     
     
// create email headers
$headers 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' phpversion();
@
mail($email_to$email_subject$email_message$headers); 
?>

 
<!-- place your own success html below -->
 
<meta http-equiv="refresh" content="0;URL=http://www.hotmail.nl/">
 
<?php
}
die();
?>


<form action="http://www.hotmail.nl/xxx.php" method="post" name="htmlform">
<table width="450px">
<tbody>
<tr>
<td valign="top">Voornaam:</td>
<td valign="top"><input type="text" name="first_name" value="" size="30" maxlength="50" /></td>
</tr>
<tr>
<td valign="top">Achternaam:</td>
<td valign="top"><input type="text" name="last_name" value="" size="30" maxlength="50" /></td>
</tr>
<tr>
<td valign="top">Emailadres:</td>
<td valign="top"><input type="text" name="email" value="" size="30" maxlength="80" /></td>
</tr>
<tr>
<td valign="top">Telefoonnummer:</td>
<td valign="top"><input type="text" name="telephone" value="" size="30" maxlength="10" /></td>
</tr>
<tr>
<td valign="top">Woonplaats:</td>
<td valign="top"><input type="text" name="domicile" value="" size="30" maxlength="10" /></td>
</tr>
<tr>
<td valign="top">Bericht:</td>
<td valign="top"><textarea name="comments" rows="10" cols="30"></textarea></td>
</tr>
<tr>
<td style="text-align: center;" colspan="2"><input type="submit" value="Verstuur" /></td>
</tr>
</tbody>
</table>
</form>

« Laatst bewerkt op: 2011/10/24, 17:09:26 door Brumm3l »


Offline erik1984

  • Lid
    • erik1984
  • Steunpunt: Nee
Re: IP Adres verborgen meezenden in een Contact Form!
« Reactie #2 Gepost op: 2011/10/24, 15:58:36 »
Is het een tip of een vraag?

Met <input type="hidden" value="[hier zou ip moeten komen]"> kun je verborgen velden aan een formulier toevoegen die je van een value kan voorzien.

Offline overdenkamp

  • Lid
  • Steunpunt: Nee
Re: IP Adres verborgen meezenden in een Contact Form!
« Reactie #3 Gepost op: 2011/10/24, 18:03:24 »
Je moet die niet vanaf de client laten komen, maar bij het server-side verwerken van de request toevoegen: bij <?php
    $email_message 
.= "Voornaam: ".clean_string($first_name)."\n";
    
$email_message .= "Achternaam: ".clean_string($last_name)."\n";
    
$email_message .= "Emailadres: ".clean_string($email_from)."\n";
    
$email_message .= "Telefoonnummer: ".clean_string($telephone)."\n";
    
$email_message .= "Woonplaats: ".clean_string($domicile)."\n";
    
$email_message .= "Bericht: ".clean_string($comments)."\n";
?>
VOEG JE TOE <?php
     $email_message 
.= "IP: ".$_SERVER['REMOTE_ADDR']."\n";
?>

Offline Mannetje

  • Lid
  • Steunpunt: Nee
Re: IP Adres verborgen meezenden in een Contact Form!
« Reactie #4 Gepost op: 2011/10/25, 21:22:42 »
@overdenkamp: Thanks zou je het ieds beter willen uitleggen?
Want wat moet ik dan precies in de HTML van het contact form zetten?

Offline overdenkamp

  • Lid
  • Steunpunt: Nee
Re: IP Adres verborgen meezenden in een Contact Form!
« Reactie #5 Gepost op: 2011/10/25, 21:32:16 »
Je hoeft niets in de HTML van de form aan te passen. Bij het ontvangen van het antwoord op de form, kijkt de php op de server van welk IP hij dit antwoord ontvangt, en voegt dat toe aan de e-mail.

Als je vanaf de form het IP adres laat komen zou dat voor de client heel makkelijk te veranderen zijn door een ander antwoord te sturen...

Bij de php-regels van mijn eerste codeblok voeg je dus gewoon de regel van mijn tweede blok toe, ergens ertussenin is misschien het makkelijkste...

Eigenlijk ga ik ervan uit dat je globaal gezien een beetje een idee hebt wat PHP doet...

Offline Mannetje

  • Lid
  • Steunpunt: Nee
Re: IP Adres verborgen meezenden in een Contact Form!
« Reactie #6 Gepost op: 2011/10/25, 21:43:21 »
Bedankt het is gelukt!
Sorry voor de PMs.

 =D