Contact.php verstuurd niet naar email wel bevestiging

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Robbert B

Robbert B

24/11/2014 18:49:19
Quote Anchor link
Beste mensen op een of andere manier verstuurd hij het mailtje niet maar krijg ik wel het bericht hij is verstuurd.

Expres even geen beveiligingen erin puur om alleen te kijken hoe alles werkt. Alleen doet hij het dus niet om een of andere reden.

Quote:
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
<?php
session_start(); // zorg ervoor dat session_start ALTIJD bovenaan ALLES van je pagina staat, anders werkt het niet!
 
// E-mailadres van de ontvanger

$mail_ontv = '[email protected]'; //

// Speciale checks voor naam en e-mailadres

if ($_SERVER['REQUEST_METHOD'] == 'POST')
{


$datum = date('d/m/Y H:i:s');
    
  $inhoud_mail = "===================================================\n";
  $inhoud_mail .= "Ingevulde contact formulier " . $_SERVER['HTTP_HOST'] . "\n";
  $inhoud_mail .= "===================================================\n\n";
  
  $inhoud_mail .= "E-mail adres: " . htmlspecialchars($_POST['email']) . "\n";
  $inhoud_mail .= "Naam: " . htmlspecialchars($_POST['naam']) . "\n";
  $inhoud_mail .= "Verstuurd op " . $datum . " via het IP adres " . $_SERVER['REMOTE_ADDR'] . "\n\n";
    
  $inhoud_mail .= "===================================================\n\n";
  
  
  $headers = 'From: ' . htmlspecialchars($_POST['naam']) . ' <' . $_POST['mail'] . '>';
  
  $headers = stripslashes($headers);
  $headers = str_replace('\n', '', $headers); // Verwijder \n
  $headers = str_replace('\r', '', $headers); // Verwijder \r
  $headers = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $headers)); // Slashes van quotes
  
  $_POST['onderwerp'] = str_replace('\n', '', $_POST['onderwerp']); // Verwijder \n
  $_POST['onderwerp'] = str_replace('\r', '', $_POST['onderwerp']); // Verwijder \r
  $_POST['onderwerp'] = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $_POST['onderwerp'])); // Slashes van quotes
  
  if (mail($mail_ontv, $_POST['onderwerp'], $inhoud_mail, $headers))
  {
    
      echo '<h1>Het contactformulier is verzonden</h1>
      
      <p>Bedankt voor het invullen van het contactformulier. We zullen zo spoedig mogelijk contact met u opnemen.</p>'
;      
  }
}

?>
 
PHP hulp

PHP hulp

04/05/2024 15:31:47
 
Johan de wit

johan de wit

24/11/2014 18:56:44
Quote Anchor link
Dus je hebt kopie en plakken gedaan?
 
Robbert B

Robbert B

24/11/2014 18:58:04
Quote Anchor link
Ik heb een bestaande code gezocht op het internet en die ben ik nu aan het ontleden, zodat ik deze later kan opbouwen. Alleen zit er nu een probleem in.
 
Johan de wit

johan de wit

24/11/2014 18:59:28
Quote Anchor link
Wat heb je aangepast buiten standaard je gevgevens?
 
Robbert B

Robbert B

24/11/2014 19:00:29
Quote Anchor link
Wat dingen weggehaald, zoals ik al aangaf onder andere de controle systemen en de anti flood.
 
Johan de wit

johan de wit

24/11/2014 19:02:37
Quote Anchor link
Zo ver ik het weet werk dat script wel maar het is meer dan 4 jaar oud.
 
Robbert B

Robbert B

24/11/2014 19:03:05
Quote Anchor link
Raar maar waar ontvang ik geen emails...
 
Johan de wit

johan de wit

24/11/2014 19:04:08
Quote Anchor link
Mail_ont zie ik alleen bovenaan staan en verder wordt het niet opgeroepen.
 
Robbert B

Robbert B

24/11/2014 19:04:51
Quote Anchor link
if (mail($mail_ontv, $_POST['onderwerp'], $inhoud_mail, $headers))
 
Johan de wit

johan de wit

24/11/2014 19:05:38
Quote Anchor link
Momentje
 
- Ariën  -
Beheerder

- Ariën -

24/11/2014 19:10:29
Quote Anchor link
Pas dit eens toe:

http://phpwiki.santhe.nl/index.php?title=De_juiste_mailheaders

En waarvandaan mail je? Een lokale webserver (zoals XAMPP) of vanaf een webhosting?
Gewijzigd op 24/11/2014 19:11:18 door - Ariën -
 
Johan de wit

johan de wit

24/11/2014 19:11:05
Quote Anchor link
Probeer iszonder dit.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
$headers = 'From: ' . htmlspecialchars($_POST['naam']) . ' <' . $_POST['mail'] . '>';

$headers = stripslashes($headers);
$headers = str_replace('\n', '', $headers); // Verwijder \n
$headers = str_replace('\r', '', $headers); // Verwijder \r
$headers = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $headers)); // Slashes van quotes

$_POST['onderwerp'] = str_replace('\n', '', $_POST['onderwerp']); // Verwijder \n
$_POST['onderwerp'] = str_replace('\r', '', $_POST['onderwerp']); // Verwijder \r
$_POST['onderwerp'] = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $_POST['onderwerp'])); // Slashes van quotes

if (mail($mail_ontv, $_POST['onderwerp'], $inhoud_mail, $headers))


Toevoeging op 24/11/2014 19:13:05:

Aar is deze contactformulier niet te oud want er staat 14 jaar geleden: http://www.phphulp.nl/php/script/data-verwerking/contact-formulier/12/contactformulierphp/1419/
 
- Ariën  -
Beheerder

- Ariën -

24/11/2014 19:15:58
Quote Anchor link
Quote:
SCRIPT UPDATE 14 FEBRUARY 2011

Valt mee ;)
 
Robbert B

Robbert B

24/11/2014 19:18:16
Quote Anchor link
Ergens een recentere ter lering en vermaak?
 
- Ariën  -
Beheerder

- Ariën -

24/11/2014 19:25:45
Quote Anchor link
Hij is kwalitatief wel goed hoor, ondanks hij pas 3 jaar oud is. Ik zou wel de headers van SanThe's PHPwiki nog even toevoegen, en een controle of mail() false kan zijn.
 
Johan de wit

johan de wit

24/11/2014 19:30:26
Quote Anchor link
- Aar - op 24/11/2014 19:15:58:
Quote:
SCRIPT UPDATE 14 FEBRUARY 2011

Valt mee ;)

Mooi, het wel leuk als wij phphulpers sommige bestaande script uptodate houden. :)
Ik zal dan nog headers van SanThe's PHPwiki inbouwen dan kunnen de andere ook gebruiken. Moet ik hiervoor een nieuwe topic openen?

Toevoeging op 24/11/2014 19:32:19:

Robbert hoe ver ben?
Gewijzigd op 24/11/2014 19:31:50 door johan de wit
 
Robbert B

Robbert B

24/11/2014 19:41:14
Quote Anchor link
Ik ga er vandaag of morgen mee aan de slag! Bedankt voor de tips, nu andere verplichtingen!
 
Johan de wit

johan de wit

24/11/2014 19:45:36
Quote Anchor link
Oke succes, laat ons weten als het gelukt is en als je ook kan vermelden wat je hebt gedaan kunnen de bezoekers ook jou oplossing proberen.
 
Robbert B

Robbert B

25/11/2014 20:21:48
Quote Anchor link
Ik ontvang nu wel mail op outlook, alleen staat het helemaal schots en scheef zoals hieronder

=================================================== Ingevulde formulier robbert.com =================================================== Emailadres: Robbert Bericht: Robbert Question: Robberrt Verstuurd op 25/11/2014 14:17:54 via het IP adres 86.xx.xx.xx ===================================================

Quote:
$datum = date('d/m/Y H:i:s');

$email = "===================================================\n";
$email .= "Ingevulde formulier " . $_SERVER['HTTP_HOST'] . "\n";
$email .= "===================================================\n\n";

$email .= "Emailadres: " . htmlspecialchars($_POST['email']) . "\n";
$email .= "Bericht: " . htmlspecialchars($_POST['bericht']) . "\n";
$email .= "Question: " . htmlspecialchars($_POST['question']) . "\n\n";

$email .= "Verstuurd op " . $datum . " via het IP adres " . $_SERVER['REMOTE_ADDR'] . "\n\n";

$email .= "===================================================\n\n";


Waar gaat dit fout?

De code is nu alsvolgt

Quote:
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
<?php
session_start(); //Altijd bovenaan!

// Speciale checks voor naam en e-mailadres

if ($_SERVER['REQUEST_METHOD'] == 'POST') //Controleert of op de knop is gedrukt!
{      
  // set datum
  $datum = date('d/m/Y H:i:s');
    
  $email = "===================================================\n";
  $email .= "Ingevulde formulier " . $_SERVER['HTTP_HOST'] . "\n";
  $email .= "===================================================\n\n";
  
  $email .= "Emailadres: " . htmlspecialchars($_POST['email']) . "\n";
  $email .= "Bericht: " . htmlspecialchars($_POST['bericht']) . "\n";
  $email .= "Question: " . htmlspecialchars($_POST['question']) . "\n\n";
    
  $email .= "Verstuurd op " . $datum . " via het IP adres " . $_SERVER['REMOTE_ADDR'] . "\n\n";
    
  $email .= "===================================================\n\n";
  
  //Headers
  
  // Een korte benaming voor jouw website

  $website_naam = 'Robbert';
  // Jouw eigen geldige emailadres
  $eigen_emailadres = '[email protected]';
  // Een geldig emailadres voor errors
  $error_emailadres = '[email protected]';
  // De naam van de verzender
  $naam_verzender = 'Afzender';
  // Het geldige emailadres van de afzender
  $email_verzender = '[email protected]';
  // Een geldig emailadres of helemaal leeg laten
  $bcc_emailadres = '';
  // HTML mail? True/False
  $html = true;

// De headers samenstellen
$headers     = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . "\r\n";
$headers    .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . "\r\n";
$headers    .= 'Return-Path: Mail-Error <' . $error_emailadres . '>' . "\r\n";
$headers    .= ($bcc_emailadres != '') ? 'Bcc: ' . $bcc_emailadres . "\r\n" : '';
$headers    .= 'X-Mailer: PHP/' . phpversion() . "\r\n";
$headers    .= 'X-Priority: Normal' . "\r\n";
$headers    .= ($html) ? 'MIME-Version: 1.0' . "\r\n" : '';
$headers    .= ($html) ? 'Content-type: text/html; charset=iso-8859-1' . "\r\n" : '';
  
  if (mail($eigen_emailadres, $_POST['onderwerp'], $email, $headers))
  {

  
      echo '<h1>Bedankt</h1>
      
      <p>U ontvangt spoedig een reactie.</p>'
;
  }
}

?>
Gewijzigd op 25/11/2014 20:24:43 door Robbert B
 
G P

G P

25/11/2014 20:32:05
Quote Anchor link
Als je het verstuurt als html moet je ook html code toepassen. <br> ipv \r en/of \n
 
Johan de wit

johan de wit

26/11/2014 03:01:17
Quote Anchor link
Idd lees hier boven

Toevoeging op 26/11/2014 03:05:53:

Bij dubbel \n dus \n\n moet <br></br> zijn
 

Pagina: 1 2 volgende »



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.