Archief - php: mail script

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Flipkikker

Legacy Member
llo,
ik heb een probleem met mijn mail script op mijn webspace en ik heb dan ook eerst de help van mijn webhost(www.100webspace.com) er eens op nagetrokken:

Formmail script is not working - it does not deliver the email to me. What's the problem?
You can be having trouble sending e-mail using Formmail script, because of the following reasons:

1. You have entered an e-mail address which is not hosted on our servers. We require the one of either the 'FROM:' e-mail address or the 'TO:' e-mail address to be hosted on our servers. Only if one of them is hosted on our servers, you will be able to send e-mail successfully.

2. You are using wrong header information. You must always provide the text From:, the name of the sender and an e-mail address. Without one of these three parameters, the formmail script will not work properly and will not deliver e-mail to your mailbox. You can find out more information here: http://www.php.net/manual/en/function.mail.php

Here are examples of well working formmail scripts:

First Example:

<?
$from = "From: yourname ";
$to = "receiver";
$subject = "Hi! ";
$body = "TEST";

if(mail($to,$subject,$body,$from)) echo "MAIL - OK";
else echo "MAIL FAILED";
?>

Second Example:

<?
$from = "From: sender";
$to = "yourname ";
$subject = "Hi! ";
$body = "TEST";

if(mail($to,$subject,$body,$from)) echo "MAIL - OK";
else echo "MAIL FAILED";
?>

dit is het script dat ik gebruik:

PHP:
<?
  $email = $_REQUEST['email'] ;
  $message = $_REQUEST['message'] ;

  mail( "[email protected]", "Mail form",
    $message, "From: [email protected]" );
  header( "Location: http://rreality.hollosite.com/thankyou.htm" );
?>

als ik het vergelijk met de voorbeelden van hun help, en hun instructies volg, dan zou mijn script toch moeten werken?
wat zou er mis zijn met mijn script? :confused:

Disa

Legacy Member
Ik heb zelf ook een tijdje moeten prutsen eer ik deftig een email kon verzenden die op de meeste hosts toekwam (cfr hotmail) en dit werkte in mijn geval:

PHP:
$mail = "0";
$naam = "0";
// Mail headers
$headers = "From: Admin@{$_SERVER['SERVER_NAME']}\r\n";
$headers .= "Reply-To: $mail\r\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=ISO-8859-1\r\n";
$headers .= "X-Sender: $naam <$mail>\r\n";
$headers .= "X-Mailer: MKSR-Postimies\r\n";
$headers .= "X-Priority: 3\r\n";
$headers .= "Return-Path: ".$mail."\r\n";

$MailTo= 'mail naar';
$Subject = 'Mijn onderwerp';
$Message = "tekst enzo ";
$check = mail ($MailTo, $Subject, $Message, $headers);

Mischien ook in uw geval de Admin@{$_SERVER['SERVER_NAME']} veranderen naar uw eigen email van 100webhost.

Dis

Flipkikker

Legacy Member
thx,
zal ik ff mee experimenteren,
is trouwens niet zo dringend, maar aangezien er op stond dat mail sturen met php geactiveerd was, wou ik dat toch ff proberen (werkte niet op mijn andere php webspace)
in dit geval moet de mail trouwens toch naar mijn eigen emailadres gezonden worden, met mijn eigen emailadres,
dus als er iemand dat form gebruikt, stuur ik een mail naar mezelf met daarin de boodschap van die persoon
is het mogelijk om de inhoud van dat form in een bestand op te slaan ipv te versturen? (liefst zonder frontpage extensies)

Flipkikker

Legacy Member
dus dit zou moeten werken?

PHP:
<?
$mail = "[email protected]"; 
$naam = "RealReality"; 
// Mail headers 
$headers = "From: [email protected]\r\n"; 
$headers .= "Reply-To: $mail\r\n"; 
$headers .= "MIME-Version: 1.0\n"; 
$headers .= "Content-type: text/html; charset=ISO-8859-1\r\n"; 
$headers .= "X-Sender: $naam <$mail>\r\n"; 
$headers .= "X-Mailer: MKSR-Postimies\r\n"; 
$headers .= "X-Priority: 3\r\n"; 
$headers .= "Return-Path: ".$mail."\r\n"; 

$MailTo= '[email protected]'; 
$Subject = 'Mail form'; 
$Message = "tekst";
$check = mail ($MailTo, $Subject, $Message, $headers); 
?>

edit: dit lijkt ook niet te werken, maar als ik nog ff de helptekst erbij neem:
You have entered an e-mail address which is not hosted on our servers. We require the one of either the 'FROM:' e-mail address or the 'TO:' e-mail address to be hosted on our servers. Only if one of them is hosted on our servers, you will be able to send e-mail successfully.
de headers zijn nu wel in orde, maar mss gebruik ik het verkeerde emailadres dat op hun server gehost wordt?
Mail: *@rreality.com - Mailbox: [email protected]

killgore

Legacy Member
zeker dat dat catchall ding geregistreerd is? (case-sensitive)

Disa

Legacy Member
Als [email protected] gehost word op de 100webhost servers zou het moeten werken. Probeer eens te checken of de mail wel verzonden word:
Zet dit onder de $checl = mail(....

PHP:
if($check) {
    echo 'Joepie ik heb een mail verzonden.';
} else {
    echo 'Snif tis mislukt';
}

not tested though

Dis

Flipkikker

Legacy Member
thx,
zal ik dan ff proberen,
eigenlijk moet dit er altijd staan, om te weten of er een fout opgetreden is of niet (mail succesfully sent, terwijl het mislukt is staat namelijk niet zo mooi :ironic: )

Flipkikker

Legacy Member
ik zal het ff proberen met een ander emailadres op hun server, maar dan geen catchall gebruiken, mss werkt het dan wel

edit:
'Joepie ik heb een mail verzonden.'
dit is al een goed teken :niceone: (nu nog die mail ontvangen)
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan