Avatar billede kiwankow Nybegynder
13. september 2009 - 12:23 Der er 6 kommentarer og
1 løsning

Hvorfor sender dette script ikke mailen..??

Hej er der nogen der kan fortælle mig hvorfor dette script ikke sender mailen afsted. Kan det skyldes webhotellets mailserver eller..??

<?php
if(isset($_POST['email'])) {
   
    // EDIT THE 2 LINES BELOW AS REQUIRED
    $email_to = "min@mail.dk";
    $email_subject = "Du er blevet kontaktet via din hjemmeside";
   
   
    function died($error) {
        // your error code can go here
        echo "Vi beklager, men der blev fundet fejl i et af de udfyldte felter. ";
        echo "Du kan se hvilken fejl herunder.<br /><br />";
        echo $error."<br /><br />";
        echo "Venligst gå tilbage og ret fejlen.<br /><br />";
        die();
    }
   
    // validation expected data exists
    if(!isset($_POST['first_name']) ||
        !isset($_POST['last_name']) ||
        !isset($_POST['email']) ||
        !isset($_POST['telephone']) ||
        !isset($_POST['comments'])) {
        died('Vi beklager men der er opstået et problem med den mail du prøvede at sende.');       
    }
   
    $first_name = $_POST['first_name']; // required
    $last_name = $_POST['last_name']; // required
    $email_from = $_POST['email']; // required
    $telephone = $_POST['telephone']; // not required
    $comments = $_POST['comments']; // required
   
    $error_message = "";
    $email_exp = "^[A-Z0-9._%-æøå]+@[A-Z0-9.-æøå]+\.[A-Zæøå]{2,4}$";
  if(!eregi($email_exp,$email_from)) {
      $error_message .= 'Den indtastede E-mail adresse lader ikke til at være gyldig.<br />';
  }
    $string_exp = "^[a-z .'-æøå]+$";
  if(!eregi($string_exp,$first_name)) {
      $error_message .= 'Det indtastede fornavn lader ikke til at være gyldigt.<br />';
  }
  if(!eregi($string_exp,$last_name)) {
      $error_message .= 'Det indtastede efternavn lader ikke til at være gyldigt.<br />';
  }
  if(strlen($comments) < 2) {
      $error_message .= 'Den indtastede besked lader ikke til at være gyldig.<br />';
  }
  $string_exp = "^[0-9 .-]+$";
  if(!eregi($string_exp,$telephone)) {
      $error_message .= 'Det indtastede telefonnummer lader ikke til at være gyldigt.<br />';
  }
  if(strlen($error_message) > 0) {
      died($error_message);
  }
    $email_message = "Du har modtaget følgende besked via din hjemmeside.\n\n";
   
    function clean_string($string) {
      $bad = array("content-type","bcc:","to:","cc:","href");
      return str_replace($bad,"",$string);
    }
   
    $email_message .= "Fornavn: ".clean_string($first_name)."\n";
    $email_message .= "Efternavn: ".clean_string($last_name)."\n";
    $email_message .= "E-mail: ".clean_string($email_from)."\n";
    $email_message .= "Telefon: ".clean_string($telephone)."\n";
    $email_message .= "Besked: ".clean_string($comments)."\n";
   
   
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers); 
?>

<?php include("sendtmail.php"); ?>



<?
}
?>
Avatar billede repox Seniormester
13. september 2009 - 12:33 #1
Hvis du nu lod være med at undertrykke eventuelle fejlmeddelelser, ville du nemmere kunne fejlfinde på det selv.
Avatar billede mrgumble Nybegynder
13. september 2009 - 14:08 #2
Og det repox mener er, at du med @ i linien @mail(...) undertrykker fejlmeddelelser. Fjern @ og se hvad den siger.
Avatar billede kiwankow Nybegynder
13. september 2009 - 17:23 #3
den siger bare:

Vi beklager, men der blev fundet fejl i et af de udfyldte felter. Du kan se hvilken fejl herunder.

Den indtastede E-mail adresse lader ikke til at være gyldig.

Venligst gå tilbage og ret fejlen.

der kommer ingen PHP-fejlmeldinger hvis det var det i mente..
Avatar billede kiwankow Nybegynder
13. september 2009 - 17:56 #4
Har prøvet scriptet på en anden server, her kører det fint..!!

Nogen der har bud på hvad der kan være galt
Avatar billede mrgumble Nybegynder
13. september 2009 - 18:15 #5
Ved du så, hvem der giver dig den besked? Hvor i systemet kommer beskeden fra?
Avatar billede dkfire Nybegynder
13. september 2009 - 22:21 #6
Jamen siger dit script jo ikke lige præcis hvad der er galt.
Din validering af email fejler.
Avatar billede kiwankow Nybegynder
20. september 2009 - 20:59 #7
fejlen skyldes forkert version af php på serveren. LUKKET
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