Php MAil functie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jens van loocke

jens van loocke

09/08/2010 21:45:06
Quote Anchor link
Hallo,

ik ben bezig met een contact form maar het lukt nog steeds niet,
ziet iemand de fout ?
Er komt geen fout op want er komt gelukt op maar het word niet verstuurd

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
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{


    $to = $_POST['aan'];
    $subject = $_POST['onderwerp'];
    $message = $_POST['bericht'];
    $headers = 'From: '.$_POST['van']."\r\n".
                'Reply-To:'.$_POST['van']."\r\n".
                'X-Mailer: PHP/'.phpversion();
    
    
    $msg1 = mail($to, $subject, $message, $headers);

    if($msg1)
    {

        echo 'Gelukt';
    }

    else
    {
        echo 'Fout bij verzenden';    
    }
}

else
{
echo '
    <form class="contact" action="" method="post">
        <label class="contact">Aan</label>
        <select class="contact" name="aan">
            <option value="[email protected]">Sam</option>
            <option value="[email protected]">Christian</option>
        </select>
        
        <label class="contact" for="1">Van</label>
        <input class="contact" id="1" name="van" type="text" />
    
        <label class="contact" for="2">Onderwerp</label>
        <input class="contact" id="2" name="onderwerp" type="text" />
        
        <label class="contact" for="3">Bericht</label>
        <textarea class="contact" name="bericht"></textarea>
        
        <input type="submit" class="submit" value="Verzenden">
    </form>'
;
    }

?>

Gewijzigd op 09/08/2010 21:46:21 door Jens van loocke
 
PHP hulp

PHP hulp

24/04/2024 17:45:58
 
Mark Beets

Mark Beets

09/08/2010 21:52:19
Quote Anchor link
ook niet als je dit boven aan je script zet.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
error_reporting(E_ALL);
ini_set("display_errors","On");
 
Jens van loocke

jens van loocke

09/08/2010 21:58:20
Quote Anchor link
heb ik geprobeert,

en nee dit lukt niet,

er komt wel gelukt! op maar in postvak in is er niets te vinden.

thx
 
Obelix Idefix

Obelix Idefix

09/08/2010 21:59:42
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$msg1 = mail($to, $subject, $message, $headers);


Je kent nu aan variabele $msg1 een 'waarde' toe en daarmee krijg je 'gelukt' als uitkomst van je if-statement.

Kijk eens op bv http://php.net/manual/en/function.mail.php hoe je dit kunt oplossen.
 
Aad B

Aad B

09/08/2010 22:12:44
Quote Anchor link
Obelix en Idefix op 09/08/2010 21:59:42:
Je kent nu aan variabele $msg1 een 'waarde' toe en daarmee krijg je 'gelukt' als uitkomst van je if-statement.
Je mag best het resultaat van een functie en in dit geval mail() toekennen aan een variabele. Ik gebruik dit en werkt prima:
$mail_sent = @mail( $to, $subject, $message, $headers );
//the message is sent successfully print "Mail sent". Otherwise print "Mail failed"
echo $mail_sent ? "Mail sent to ".$to : "Mail failed";

Het probleem ligt niet in $msg = mail(
Gewijzigd op 09/08/2010 22:13:14 door Aad B
 
Jens van loocke

jens van loocke

09/08/2010 22:16:12
Quote Anchor link
wat zou het probleem kunnen zijn dan :)à?

thx
 
Mark D

Mark D

09/08/2010 22:20:42
Quote Anchor link
Ben je er ook zeker van dat de mail niet wordt verstuurd? Vaak komen mailtjes met verkeerde headers namelijk in de spambox terecht. Zoek daar ook eens even. Mocht het in de spambox zitten, dan zou ik overwegen naar een oplossing als PHPMailer, aangezien die wat beter is in de goede headers meesturen, en dus een (veel) kleinere kans heeft als spam te worden aangemerkt.
 
Jens van loocke

jens van loocke

09/08/2010 22:22:29
Quote Anchor link
Nee,

ik heb overal gekeken en zie nergens de mail,
heb het ook al proberen sturen naar andere mensen hun email
en lukt ook niet
 
Aad B

Aad B

09/08/2010 22:24:09
Quote Anchor link
PHPMailer prima tool, mee eens.
Of zoek naar een goed header voorbeeld en probeer dat.
Dit is sowieso onnodig: 'X-Mailer: PHP/'.phpversion();

Edit:

Dit is het enige dat ik in de header zet en het werkt prima!
$headers = "From: Website Cafe Proost <[email protected]>\r\n";
Gewijzigd op 09/08/2010 22:27:05 door Aad B
 

09/08/2010 22:27:12
 
Mark Beets

Mark Beets

09/08/2010 23:51:25
Quote Anchor link
Ik heb even iets uit de oude doos voor je getrokken ... ik gebruik zelf nu ook phpMailer, al jaren! Dan moet je wel een beetje weten hoe je met classes werkt.

Zo zijn we allemaal begonnen, dus hierbij..
(je kan zelf wel even de vars aanpassen, toch?)

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
<?php

    //-----------------------------------------------------------------
    //    Configure > Error display
    //-----------------------------------------------------------------

    error_reporting(E_ALL);
    ini_set("display_errors","On"); //activeer de display_error
    
if($_SERVER['REQUEST_METHOD'] == 'POST')
{


    $headers  = "From: \"".$a."\" <".$e.">\r\n";   //vanwie is mail
    $headers .= "Reply-To: \"".$a."\" <".$e.">\r\n";     //op mail kunnen beantwoorden.
    //$headers .= "Cc: \"naam mijn domein\" <[email protected]>\r\n";
    //$headers .= "Bcc: \"naam mijn domein\" <[email protected]>\r\n";
    //$headers .= "add_attachment: ";

    $headers .= 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";  //   text/html   text/plain        image/gif        multipart/alternative
    $aan  = '[email protected]' . ', '; // note the comma
    $onderwerp = '[ Contact formulier ] mijn script.nl';
    $bericht = ''; //html tussen de '', of gewoon tekst
        
    if (mail($aan, $onderwerp, $bericht, $headers)) {
    {

        echo 'Gelukt';
    }
else
        {
            echo 'Fout bij verzenden';    
        }
}

else
    {
    echo '
        <form class="contact" action="" method="post">
            <label class="contact">Aan</label>
            <select class="contact" name="aan">
                <option value="[email protected]">Sam</option>
                <option value="[email protected]">Christian</option>
            </select>
            
            <label class="contact" for="1">Van</label>
            <input class="contact" id="1" name="van" type="text" />
        
            <label class="contact" for="2">Onderwerp</label>
            <input class="contact" id="2" name="onderwerp" type="text" />
            
            <label class="contact" for="3">Bericht</label>
            <textarea class="contact" name="bericht"></textarea>
            
            <input type="submit" class="submit" value="Verzenden">
        </form>'
;
    }

?>
 
- SanThe -

- SanThe -

10/08/2010 01:22:44
Quote Anchor link
Ligt waarschijnlijk aan de headers. De From zoals jij die hebt wordt niet door elke server geaccepteerd. Zie hier.
Gewijzigd op 10/08/2010 01:23:19 door - SanThe -
 



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.