Avatar billede Slettet bruger
05. oktober 2010 - 10:25 Der er 6 kommentarer og
1 løsning

Formmail der sender kopi til afsender

Så er den gal igen.

Jeg har en formmail, der fint nok sender til den som skal modtage mailen. Men jeg vil også gerne have, at afsenderen får en kopi af formmailen. Hvor og hvad sætter jeg det ind??

<?php

function printform($data, $errors) {
    ?>
                                      </p>
                                    </p>
                                    <form action="<?=$_SERVER['PHP_SELF'];?>" method="POST">
                                     
                                      <p>
                                        <? if($errors['navn']) print '<b>'.$errors['navn'].'</b><br>'; ?>
                                           Dit navn:       
                                        <input name="navn" type="text" value="<?=$data['navn'];?>" size="30">
                                                                                   Din E-mail: 
                                        <input name="email" type="text" value="<?=$data['email'];?>" size="30" /><br><br>
                                         
                                        <? if($errors['email']) print '<b>'.$errors['email'].'</b><br>'; ?>
                                           <br>
                                         
                                        <? if($errors['emne']) print '<b>'.$errors['emne'].'</b><br>'; ?>
                                           Emne:         
                                        <input name="emne" type="text" value="<?=$data['emne'];?>" size="30"><br><br>
                                         
                                        <? if($errors['besked']) print '<b>'.$errors['besked'].'</b><br>'; ?>
                                                            
                                        <textarea name="besked" cols="75" rows="6"><?=htmlentities($data['besked']);?>
Avatar billede repox Seniormester
05. oktober 2010 - 10:38 #1
Det der sender ingen email. Det der viser kun den formular der skal bruges til at sende POST data til din PHP fil.
Avatar billede Slettet bruger
05. oktober 2010 - 12:26 #2
<?php

function printform($data, $errors) {
    ?>
                                      </p>
                                    </p>
                                    <form action="<?=$_SERVER['PHP_SELF'];?>" method="POST">
                                     
                                      <p>
                                        <? if($errors['navn']) print '<b>'.$errors['navn'].'</b><br>'; ?>
                                        &nbsp;&nbsp;&nbsp;Dit navn:    &nbsp;&nbsp;&nbsp;
                                        <input name="navn" type="text" value="<?=$data['navn'];?>" size="30">
                                        &nbsp;&nbsp;                                      &nbsp;&nbsp;&nbsp;Din E-mail:&nbsp;
                                        <input name="email" type="text" value="<?=$data['email'];?>" size="30" /><br><br>
                                         
                                        <? if($errors['email']) print '<b>'.$errors['email'].'</b><br>'; ?>
                                        &nbsp;&nbsp;&nbsp;<br>
                                         
                                        <? if($errors['emne']) print '<b>'.$errors['emne'].'</b><br>'; ?>
                                        &nbsp;&nbsp;&nbsp;Emne:  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                                        <input name="emne" type="text" value="<?=$data['emne'];?>" size="30"><br><br>
                                         
                                        <? if($errors['besked']) print '<b>'.$errors['besked'].'</b><br>'; ?>
                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                                        <textarea name="besked" cols="75" rows="6"><?=htmlentities($data['besked']);?>
    </textarea>
                                        <br><br>
                                         
                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                                        <input name="submitted" type="submit" class="send2" value="Send">
                                        <span style="text-align: right"></span> <span style="text-align: center"></span></p>
                                    </form>
    <?
}

function _send($to, $data) {
    $subject = $data['emne'];
    $headers = 'From: '.$data['navn'].' <'.$data['email'].'>';
    $message = 'Besked fra kontakt formularen

Navn:    '.$data['navn'].'
E-mail:  '.$data['email'].'
Emne: '.$data['emne'].'

'.$data['besked'];

    mail($to, $subject, $message, $headers);
    mail($to, $data, $message, $headers);
}

function _data() {
    return array(
        'navn' => $_POST['navn'],
      /* 'telefon' => $_POST['telefon'],*/
        'email' => $_POST['email'],
        'emne' => $_POST['emne'],
        'besked' => $_POST['besked']
    );
}

function _validate($data) {
    $errors = array();
    if(!$data['navn']) $errors['navn'] = 'Navn skal udfyldes';
    if(!$data['email']) $errors['email'] = 'E-mail skal udfyldes';
    if(!$data['emne']) $errors['emne'] = 'Emne skal udfyldes';
    if(!$data['besked']) $errors['besked'] = 'Besked skal udfyldes';
    return $errors;
}

if($_POST['submitted']) {
    $data = _data();
    $errors = _validate($data);
    if(count($errors)) {
        printform($data, $errors);
    } else {
        _send('design@pc.dk', $data);
        print 'Tak for din henvendelse, vi har modtaget din besked og vender hurtigst muligt tilbage til dig.<br /><br />Med venlig hilsen<br /><img src="../img/layout/logo-250.png" width="179" height="37" alt="logo" />';
    }
} else {
    printform(array(), array());
}

?>
Avatar billede Slettet bruger
05. oktober 2010 - 12:26 #3
Jeg havde sat det hele ind sidst, men ved ikke hvad der er sket - men nu kommer det hele vist med.
Avatar billede majbom Novice
05. oktober 2010 - 12:34 #4
du smider denne linje ind:

_send($_POST['email'], $data);

efter:

_send('design@pc.dk', $data);
Avatar billede Slettet bruger
05. oktober 2010 - 12:38 #5
Det virker jo bare perfekt. Takker for hjælpen - og smider du lige et svar:)
Avatar billede majbom Novice
05. oktober 2010 - 12:55 #6
selv tak :)
Avatar billede majbom Novice
05. oktober 2010 - 21:56 #7
tfp :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester