Contact form komt niet goed in hotmail

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Informatieanalist - Oracle Softwareontwikkelaar

Enthousiaste en ervaren informatieanalist / softwareontwikkelaar gezocht!! Houdt jij van technische uitdagingen en krijg jij energie van het ontwerpen en realiseren van de beste software-oplossingen voor de dienstverlening? Dan is deze functie wellicht voor jou weggelegd! Het betreft een functie waarbij je, afhankelijk van het project samenwerkt met meerdere disciplines binnen ICT, vertegenwoordigers vanuit alle afdelingen in de organisatie, externe klanten en leveranciers. Je vertaalt de functionele vraag in technische oplossingen en realiseert deze. Afhankelijk van het type project of change geschiedt dit binnen de daarbij passende methodiek: Modern agile/scrum op basis van DevOps-gedachtengoed of traditioneel waterval. Wat zijn je

Bekijk vacature »

PHP Developers gezocht die van complexe online vra

Vacature Omschrijving Een grote klant is opzoek naar enthousiaste PHP developers (junior/medior/senior). De organisatie waar jij komt te werken ontwikkelt en bouwt succesvolle oplossingen voor complexe online vraagstukken zoals performance, usability en conversion. Daarnaast zorgen zij voor externe systemen ingericht voor productbeheer, point-of-sales en voorraadbeheer koppelt de organisatie probleemloos aan op eigen Magento gebaseerde webshops. Het is een informele organisatie waar de communicatielijnen kort zijn. Functieomschrijving Met drupal 8 of ShopWare realiseert de organisatie prachtige frond-ends op dynamische data uit allerlei systemen. Je houdt je in deze organisatie bezig met het ontwerpen, ontwikkelen en beheren van functionaliteiten van de applicaties

Bekijk vacature »

Rob Tel

rob Tel

01/10/2009 00:17:00
Quote Anchor link
Dag Allemaal,

Ik heb een simpel contactformulier maar als ik hem naar mijn hotmail laat verzenden krijg ik bij het openen eerst het bericht "This message has been blocked for your safety. "

Zit hem dat in de scripting of in hotmail? ik hoorde al van iemand dat hotmail waarschijnlijk bepaalde headers verwacht die niet worden verstuurd.

Hieronder het script; wat doe ik fout?
<html>
<body>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$email
='mail@hotmail.com';

    if($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['form']))
    {

    if(!trim($_POST['naam'])) {
    print 'U heeft geen naam ingevuld.'?>
<a href='javascript:history.go(-1)'>Ga terug.</a>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<? ;}    
    elseif(!eregi("[A-Za-z0-9_-]+([.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([.]{1}[A-Za-z0-9-]+)+", $_POST['email'])) {
       print 'U heeft geen geldig emailadres ingevuld.'?>
<a href='javascript:history.go(-1)'>Ga terug.</a>
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
<? ;}
  
  
    else{
                $headers = "From: ".$_POST['naam']." <".$_POST['email'].">\r\n";
                $headers .= "Reply-To: ".$_POST['naam']." <".$_POST['email'].">\r\n";
                                    //create body
                            
                        //het bericht

                $body.= "Naam: ";
                $body.= $_POST['naam'] ."\r\n";
                $body.= "Email: ";
                $body.=    $_POST['email'] ."\r\n";

                     mail($email,"Contact: ".$_POST['naam'],$body,$headers);
               print 'bedankt';
            } }

          
    
     else
     {
?>
<form name="form" method="POST" >
<input name="form" type="hidden" value="" />
<table>

<tr>
<td width="195">Naam: <i>*</i></td>
<td width="401"> <input type="tekst"name="naam" id="q"> </td></tr>
<tr>
<td>E-mail adres: <i>*</i></td>
<td><input type="tekst"name="email" id="q"></td>
</tr>

<tr><td></td><td> <p> <input type="submit" value="Versturen" onclick="" id="button" /></p></td></tr>
</table>
</form>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
    }
?>



</body>
</html>


alvast bedankt.
 
PHP hulp

PHP hulp

21/10/2019 03:15:44
 
The Ultimate

The Ultimate

01/10/2009 08:34:00
Quote Anchor link
Ok, de mail functie werkt als volgt:

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
<?php
$to
= "someone <some@email>";
$subject = "You've got mail!";
$message = "Hello someone.";
$headers = "From: me@mysite.com\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "Reply-To: me <me@mysite.com>\n";
$headers .= "X-Priority: 1\n";
$headers .= "X-MSmail-Priority: High\n";
$headers .= "X-mailer: My mailer";

mail ($to, $subject, $message, $headers)
?>


Het kan uiteraard zijn dat Hotmail denkt dat jouw bericht SPAM zijn vanwege de inhoud van jouw bericht, maar ik zou beginnen met het uitbreiden van jouw headers.

Uiteraard wanneer je phpmailer of swiftmailer gebruikt heb je hier geen last van.

EDIT (TIP):
Verwerk de mail niet midden in de <body> van de pagina maar plaats de verwerking ervan helemaal bovenaan de pagina (dus nog boven de header en voor al het andere). Alle foutmeldingen kun je dan in een array() (bv. $errMess) plaatsen en op een willekeurig plaats op de pagina tonen. Je zou het ook in een functie/classe kunnen zetten en het vervolgens kunnen aanroepen, maar dat gaat wellicht iets te ver voor nu?
Gewijzigd op 01/01/1970 01:00:00 door The Ultimate
 
Rob Tel

rob Tel

01/10/2009 10:13:00
Quote Anchor link
bedankt,

ik heb uitgevonden dat het probleem zit in deze 2 regels;

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?
$headers
= "From: ".$_POST['naam']." <".$_POST['email'].">\n";
$headers .= "Reply-To: ".$_POST['naam']." <".$_POST['email'].">\n";
?>


Toch zou ik wel graag willen dat hij de naam en mail laat zien als afzender. is daar nog een mogelijkheid toe?
 
The Ultimate

The Ultimate

01/10/2009 10:36:00
Quote Anchor link
Robbert schreef op 01.10.2009 10:13:
bedankt,
Toch zou ik wel graag willen dat hij de naam en mail laat zien als afzender. is daar nog een mogelijkheid toe?


Wat bedoel je?
 
Rob Tel

rob Tel

01/10/2009 10:54:00
Quote Anchor link
nou in hotmail dat er een naam + email vande afzender komt te staan..

ik heb phpmailer en swift mailer beide gedownload, maar dat zijn hele grote scripts. ik wil echter een zeer simpel contactscript.. moet het dan zo uitgebreid als swift of phpmailer?
 
Toine vd P

Toine vd P

01/10/2009 11:04:00
Quote Anchor link
Controleer in eerste instantie of het fromadres ook daadwerkelijk van het domein komt waar je vanaf verzend, dit is de meestvoorkomende fout in deze situatie, dus als je test vanaf www.ditismijnsite.nl dient je from adres te eindigen op @ditismijnsite.nl
 
Rob Tel

rob Tel

01/10/2009 11:32:00
Quote Anchor link
hmm oke, zoiets lijkt het inderdaad te zijn.. want als hij vanaf eigendomein.nl binnen komt gaat het goed.

Maar ik wil dus graag het volgende dat hij binnen komt met het emailadres dat is opgegeven in het formulier(dus niet die van de desbetreffende server)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
$headers
= "From: ".$_POST['naam']." <".$_POST['email'].">\n";
?>


en dat hij bij het replyen replied naar het opgegeven emailadres:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<? $headers .= "Reply-To: ".$_POST['naam']." <".$_POST['email'].">\n";
?>


hoe kan ik zoiets voor elkaar krijgen?
 
Rob Tel

rob Tel

01/10/2009 15:11:00
Quote Anchor link
heb het voor elkaar, bedankt allemaal!

Gelieve Niet Bumpen::
Twee of meer keer achter elkaar in een topic posten heet bumpen. Bumpen is pas na 24 uur toegestaan en kan een reden zijn voor de admins en moderators om een topic te sluiten. Gebruik indien nodig de http://www.phphulp.nl/imgs/forum/edit.gif knop om je tekst aan te passen.

SanThe.
Gewijzigd op 01/01/1970 01:00:00 door rob Tel
 
- SanThe -

- SanThe -

01/10/2009 15:20:00
Quote Anchor link
Robbert schreef op 01.10.2009 15:11:
heb het voor elkaar, bedankt allemaal!

Hoe dan? Graag ook even hier vermelden.
 
Rob Tel

rob Tel

01/10/2009 15:22:00
Quote Anchor link
nou heb het in zoverre voor elkaar dat als ik bij de from; de eigen domeinnaam neerzet dat het dan lukt.. als ik de naam en mail van diegene die het formulier verzonden heeft laat staan dan gaat het fout.
 
Jan Willem van der Veer

Jan Willem van der Veer

01/10/2009 15:29:00
Quote Anchor link
Quote:
als ik de naam en mail van diegene die het formulier verzonden heeft laat staan dan gaat het fout.
Wat gaat er fout?

Misschien moet je ook bedenken dat je < moet escapen binnen die dingen. Dus:
$headers = 'From: "'.str_replace('"', '""', $from).'" <'.$fromMail.'>';

Maar wat voor veld is die $_POST['naam']. Staan daar soms rare tekens in (en dan bedoel ik tekens die niet binnen ASCII-set vallen)? Want dan zul je weer voor UTF-8 o.i.d. moeten gaan escapen :)
 
- SanThe -

- SanThe -

01/10/2009 15:49:00
Quote Anchor link
Robbert schreef op 01.10.2009 15:22:
nou heb het in zoverre voor elkaar dat als ik bij de from; de eigen domeinnaam neerzet dat het dan lukt.. als ik de naam en mail van diegene die het formulier verzonden heeft laat staan dan gaat het fout.

Dat komt door SPF.
 
Rob Tel

rob Tel

01/10/2009 15:51:00
Quote Anchor link
SanThe schreef op 01.10.2009 15:49:
Robbert schreef op 01.10.2009 15:22:
nou heb het in zoverre voor elkaar dat als ik bij de from; de eigen domeinnaam neerzet dat het dan lukt.. als ik de naam en mail van diegene die het formulier verzonden heeft laat staan dan gaat het fout.

Dat komt door SPF.


oke en dat valt niet te omzeilen?
 
- SanThe -

- SanThe -

01/10/2009 15:54:00
Quote Anchor link
Nee, gelukkig niet. Dat is een anti-spam methode en we houden niet van spammers.

Edit: Hier staat ook de return-path nog bij.
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
 
Jan Willem van der Veer

Jan Willem van der Veer

01/10/2009 16:08:00
Quote Anchor link
Quote:
Nee, gelukkig niet. Dat is een anti-spam methode en we houden niet van spammers.
Dan wil ik nog wel eens weten hoe het zit met al die sites die niet hun eigen domein gebruiken, maar desondanks wel mail versturen van hun domein. Denk hierbij bijvoorbeeld aan de phpBB-fora e.d.
 
- SanThe -

- SanThe -

01/10/2009 17:11:00
Quote Anchor link
De SPF check wordt nog lang niet door ieder domain toegepast. Bij heel veel DNS servers ontbreekt het benodigde record nog.
 
Jan Willem van der Veer

Jan Willem van der Veer

01/10/2009 17:41:00
Quote Anchor link
Yep, maar dat lijkt mij toch niet te gelden voor algemeen bekende domeinen als gmail en hotmail... En die komen bij mij (gmail) ook altijd netjes binnen. Ik vraag me dus af of gmail er gebruik van maakt of hoe wachterdicht het systeem is :)
 



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.