Avatar billede numselingus Nybegynder
01. februar 2007 - 09:42 Der er 16 kommentarer og
1 løsning

Anbefaling via en form

Jeg har indsat følgende script, men det funker ikke! Jeg modtager ikke nogen mail når jeg udfylder formularen...Er der nogen der kan  hjælpe? Koden ser sådan her ud:
<?php

$my_email = 'sanin@mbm.as';
$safe_domains = array('www.mbm.as', 'mbm.as');

if ((isset($_POST['email_friend'])) && ($_POST['email_friend'] == 'Recommend') ) {
    addslashes(extract($_POST));
   
    $message = '
   
    Hej <Anbefal>

<tellname>, <tellemail> besøgte vores hjemmeside
http://www.mbm.as/ og synes du skal besøge den for at se hvad vi tilbyder.
   
    ';
   
    $i = count($safe_domains) - 1;
    while ($i >= 0) {
        if (strpos($_SERVER['HTTP_REFERER'], "http://$safe_domains[$i]") === 0) {
        $safe = "yes";
        }
    $i--;
    }
   
    if ( ($safe == "yes") && (($tellemail != '' ) || ($tellfriend != '' ))) {
        $regexp = "^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$";
        $sendervalid = 'Nope';
        $rxvalid = 'Nope';
        if (eregi($regexp, $tellemail)){
            $sendervalid = 'Yes';
        }
        if (eregi($regexp, $tellfriend)){
            $rxvalid = 'Yes';
        }
        if (($sendervalid == 'Yes') && ($rxvalid == 'Yes')) {
            $good = 'yes';
        }
    }
   
    if ($good =='yes') {
        $subject = 'Recommended Website';
        $headers = "From: <$tellemail>\r\n";
        $fmtMail = str_replace("<tellfriend>", $tellfriend, $message);
        $fmtMail = str_replace("<tellname>", $tellname, $fmtMail);
        $fmtMail = str_replace("<tellemail>", $tellemail, $fmtMail);
        $frommail = $_SERVER["REMOTE_ADDR"];
        $fmtMail2 = "$fmtMail \n\n Remote IP is $frommail \n\n\n";
       
        mail($tellfriend, $subject, $fmtMail, $headers, "-f$tellemail");
        mail($my_email, $subject, $fmtMail2, $headers, "-f$tellemail");
        echo "Besked afsendt!\n<br>\n";
    }
}
?>
  <form action="#" method="post" name="tellfriend">
<fieldset>
<legend>Anbefal os </legend>
Dit navn :<br>
<input type="text" size="25" name="tellname"><br>
Din mail:<br>
<input type="text" size="25" name="tellemail"><br>
Anbefal os til:<br>
<input type="text" size="25" name="tellfriend">
<p>
  <input type="submit" name="email_friend" value="Anbefal"></p>
</fieldset>
</form>

På forhånd tak
Avatar billede mcgoat Nybegynder
01. februar 2007 - 09:48 #1
bare for at lave en lille test så prøv dette script

<?php
mail('sanin@mbm.as', 'Det virker', 'Ja det gør');
?>
Avatar billede numselingus Nybegynder
01. februar 2007 - 09:51 #2
I stedet for hvad? Altså hele koden eller? Jeg er ikke en haj til php overhovedet hehe:)
Avatar billede mcgoat Nybegynder
01. februar 2007 - 09:51 #3
bare opret en ny .php fil og smid de 3 linier ind i, og kør filen. Og se om du modtager en mail
Avatar billede numselingus Nybegynder
01. februar 2007 - 09:56 #4
ja det virker, men udover at hver gang jeg refresher min side, så får jeg en mail:)
Avatar billede numselingus Nybegynder
01. februar 2007 - 09:57 #5
og jeg kan heller ik se mail på den der anbefaler...
Avatar billede numselingus Nybegynder
01. februar 2007 - 09:59 #6
har du msn:)
Avatar billede mcgoat Nybegynder
01. februar 2007 - 11:04 #7
if ((isset($_POST['email_friend'])) && ($_POST['email_friend'] == 'Recommend') ) {

lav den om til

if ((isset($_POST['email_friend'])) && ($_POST['email_friend'] == 'Anbefal') ) {
Avatar billede mcgoat Nybegynder
01. februar 2007 - 11:07 #8
$tellemail = $_POST['tellemail'];
$tellfriend  $_POST['tellfriend'];

sæt også lige de 2 linier ind oven over $message = ' ........
Avatar billede numselingus Nybegynder
01. februar 2007 - 11:17 #9
så får jeg denne besked:

Parse error: syntax error, unexpected T_VARIABLE in /home/virtual/mbm.as/public_html/index.php on line 65
Avatar billede sw_red_6 Nybegynder
01. februar 2007 - 11:20 #10
fordi der mangler en =
prøv det her:
$tellemail = $_POST['tellemail'];
$tellfriend = $_POST['tellfriend'];
Avatar billede numselingus Nybegynder
01. februar 2007 - 11:20 #11
den fiksede jeg, der manglede =... men der dukker det her op når jeg taster info ind i formen...

Warning: mail() [function.mail]: SAFE MODE Restriction in effect. The fifth parameter is disabled in SAFE MODE. in /home/virtual/mbm.as/public_html/index.php on line 108

Warning: mail() [function.mail]: SAFE MODE Restriction in effect. The fifth parameter is disabled in SAFE MODE. in /home/virtual/mbm.as/public_html/index.php on line 109
Besked afsendt!

Kan du evt. prøve at gå ind på www.mbm.as og prøve at fylde den ud? Så kan du se hvad den siger...:)
Avatar billede numselingus Nybegynder
01. februar 2007 - 11:21 #12
det er de her to linier den melder fejl på:
mail($tellfriend, $subject, $fmtMail, $headers, "-f$tellemail");
mail($my_email, $subject, $fmtMail2, $headers, "-f$tellemail");
Avatar billede mcgoat Nybegynder
01. februar 2007 - 11:38 #13
mail($tellfriend, $subject, $fmtMail, $headers);
mail($my_email, $subject, $fmtMail2, $headers);

hvad med sdan?
Avatar billede numselingus Nybegynder
01. februar 2007 - 11:42 #14
Det var da helt som det skulle være:D:D:D:D... Point til dig mester:):) Takker for hjælpen!!!!!
Avatar billede numselingus Nybegynder
01. februar 2007 - 11:45 #15
Hvordan er det lige man giver point ud!? Det er længe siden jeg har brugt experten:(
Avatar billede mcgoat Nybegynder
01. februar 2007 - 12:08 #16
Smider et svar, så markerer du mit navn og trykker accepter :)
Avatar billede numselingus Nybegynder
01. februar 2007 - 12:38 #17
Tak for hjælpen:) Nu burde du kunne få dem:)
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

IT-JOB