Avatar billede tangent2820 Praktikant
12. juni 2017 - 17:30 Der er 10 kommentarer

simpel formmail

Hej
Har nu forsøgt at få det til at virke med formmail .. men .. ;-(
Har gemt en htm fil og en php fil der er kopieret direkte - kun mail adr. er ændret - og det virker fortsat ikke ... kan nogen hjælpe med hvad jeg gør forkert .. ?
nedenstående er gemt som php.fil uden nogen tilføjelser ...

<?php
if(isset($_POST['email'])) {

    // EDIT THE 2 LINES BELOW AS REQUIRED
    $email_to = "min mail-adr,";
    $email_subject = "Your email subject line";

    function died($error) {
        // your error code can go here
        echo "We are very sorry, but there were error(s) found with the form you submitted. ";
        echo "These errors appear below.<br /><br />";
        echo $error."<br /><br />";
        echo "Please go back and fix these errors.<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('We are sorry, but there appears to be a problem with the form you submitted.');     
    }

   

    $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-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';

  if(!preg_match($email_exp,$email_from)) {
    $error_message .= 'The Email Address you entered does not appear to be valid.<br />';
  }

    $string_exp = "/^[A-Za-z .'-]+$/";

  if(!preg_match($string_exp,$first_name)) {
    $error_message .= 'The First Name you entered does not appear to be valid.<br />';
  }

  if(!preg_match($string_exp,$last_name)) {
    $error_message .= 'The Last Name you entered does not appear to be valid.<br />';
  }

  if(strlen($comments) < 2) {
    $error_message .= 'The Comments you entered do not appear to be valid.<br />';
  }

  if(strlen($error_message) > 0) {
    died($error_message);
  }

    $email_message = "Form details below.\n\n";

   
    function clean_string($string) {
      $bad = array("content-type","bcc:","to:","cc:","href");
      return str_replace($bad,"",$string);
    }

   

    $email_message .= "First Name: ".clean_string($first_name)."\n";
    $email_message .= "Last Name: ".clean_string($last_name)."\n";
    $email_message .= "Email: ".clean_string($email_from)."\n";
    $email_message .= "Telephone: ".clean_string($telephone)."\n";
    $email_message .= "Comments: ".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); 
?>

<!-- include your own success html here -->

Thank you for contacting us. We will be in touch with you very soon.

<?php

}
?>

Og denne fil er gemt som en htm.fil :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body><form name="contactform" method="post" action="send_form_email.php">
<table width="450px">
<tr>
<td valign="top">
  <label for="first_name">First Name *</label>
</td>
<td valign="top">
  <input  type="text" name="first_name" maxlength="50" size="30">
</td>
</tr>
<tr>
<td valign="top"">
  <label for="last_name">Last Name *</label>
</td>
<td valign="top">
  <input  type="text" name="last_name" maxlength="50" size="30">
</td>
</tr>
<tr>
<td valign="top">
  <label for="email">Email Address *</label>
</td>
<td valign="top">
  <input  type="text" name="email" maxlength="80" size="30">
</td>
</tr>
<tr>
<td valign="top">
  <label for="telephone">Telephone Number</label>
</td>
<td valign="top">
  <input  type="text" name="telephone" maxlength="30" size="30">
</td>
</tr>
<tr>
<td valign="top">
  <label for="comments">Comments *</label>
</td>
<td valign="top">
  <textarea  name="comments" maxlength="1000" cols="25" rows="6"></textarea>
</td>
</tr>
<tr>
<td colspan="2" style="text-align:center">
  <input type="submit" value="Submit">  <a href="http://www.freecontactform.com/email_form.php">Email Form</a>
</td>
</tr>
</table>
</form>
</body>
</html>

Al hjælp modtage smed stor fornøjelse og taknemmelighed ..
Jeg skal blot lave en lille form-mail med fornavn, Efternavn, Adresse, Postnummer og e-mail ..  så det burde være simpelt ..
Venligst A
Avatar billede olsensweb.dk Ekspert
12. juni 2017 - 17:52 #1
hvilke fejl får du ??
har du slået "display error" og error_reporting til ??
hvis ikke gør det
uden en fejl besked famle man i blinde

ligner du har taget coden herfra
https://www.computerworld.dk/eksperten/spm/1014160
https://www.computerworld.dk/eksperten/spm/1014040
Avatar billede Alice Nørregaard Praktikant
12. juni 2017 - 17:56 #2
ja, det har jeg - blot for at få noget til at virke .. jeg får fejl 404 - siden kan ikke vises - så jeg aner ikke hvor jeg skal begynde og ende .. ;-(
Avatar billede olsensweb.dk Ekspert
12. juni 2017 - 18:12 #3
#2
lyder som om du har ikke lavet siden send_form_email.php, vær opmærksom på at linux er følsom over for store og små bogstaver.
du kalder jo siden herfra
<form name="contactform" method="post" action="send_form_email.php">
Avatar billede Alice Nørregaard Praktikant
12. juni 2017 - 18:21 #4
- Præcis det står der i min html fil lige efter <body> tag`et ... har lige checket en ekstra gang ....skal det stå andre steder .. ?
Avatar billede olsensweb.dk Ekspert
12. juni 2017 - 18:36 #5
du burde nok slette eller udkommenterer denne linje 
<a href="http://www.freecontactform.com/email_form.php">Email Form</a>
så du ikke kommer til at trykke på dette link og tror den bliver sendt til din side


men det var da rart at se hvor org coden stammer fra :)


#4
har du lavet filen send_form_email.php ??
og ligger den sammen sted som din html fil ?? (skal den)

den code der er vist i #0 virker tilsyneladende, efter en kort test (localhost)

dumt spm: du afvikler html filen fra din web server ikk ?? (skal du, ellers bliver php ikke fortolket )
Avatar billede Alice Nørregaard Praktikant
12. juni 2017 - 18:39 #6
jeg har lavet to filer : en html fil og en php fil der begge er lagt på min server  .. de er ikke lagt i en undermappe ell. lign . - men når jeg forsøger (m. højreklik : vis i browser )  at få vist contactform kommer fejl 404 - kan ikke vises ...
Avatar billede olsensweb.dk Ekspert
12. juni 2017 - 18:48 #7
kan du ikke komme med at link til din side ??
"men når jeg forsøger (m. højreklik : vis i browser )  at få vist contactform kommer fejl 404 - kan ikke vises ..."
forstår jeg ikke
Avatar billede olsensweb.dk Ekspert
12. juni 2017 - 18:50 #8
har du lagt filerne det rigtige sted på serveren ??
Avatar billede Alice Nørregaard Praktikant
12. juni 2017 - 18:57 #9
- et link til siden hjælper ikke - for der er ingenting .. - jeg tester først om jeg kan få skidtet til at fungere inden jeg tilføjer det til mit site .. .. jeg har blot uploaded filerne til serveren .. og derefter forsøgt at få kontakt - men uden held ... men det burde vel ikke kunne give problemer .. ?
Avatar billede htx98i17 Professor
12. juni 2017 - 20:15 #10
Jamen hvad for en server har du lagt dem op på og hvordan tilgår du din side? hvad skriver du i din browsers adressefelt?
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

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