Avatar billede miss-g Seniormester
30. september 2009 - 16:27 Der er 2 kommentarer og
1 løsning

Formmail - validerings spørgsmål...

Jeg har en formmail som sådan set fungerer fint nok på http://www.nicolin.dk/kontakt.php, men jeg kunne godt tænke mig nogle små ændringer.

1) når formmailen ser sendt skal brugere sendes videre til:
http://www.nicolin.dk/kontakt_tak.php

2) når formular ikke kan sendes kunne jeg godt tænke mig at de får fejlbeskeden på selve formular siden http://www.nicolin.dk/kontakt.php.

Jeg ved intet om PHP, jeg har blot brugt færdig script fra hjemmesideskolen.dk.

-------------------------------------------------------------
Her er den kode der sender (sender.php)
-------------------------------------------------------------

<body>
<?php
if (isset($_POST['submit']))
{
if (!empty($_POST['name']) && // tjek, at der er skrevet et navn
!empty($_POST['email']) &&    // tjek, at der er skrevet i e-mail adressefeltet
strpos($_POST['email'], "@") &&  //Tjek, at der skrevet et @ et sted i e-mail adressefeltet
!empty($_POST['emne']) &&  // tjek, at der er skrevet et emne
!empty($_POST['besked']) &&  // tjek, at der er skrevet en besked

// her følger sikringen mod spambotter
!strpos($_POST['name'], "nicolin.dk") &&  // tjek, at dit domæne ikke er skrevet i feltet "navn"
!strpos($_POST['email'], "nicolin.dk") && // tjek, at dit domæne ikke er skrevet i feltet "email"
!strpos($_POST['name'], "@") && // tjek, at der ikke er et @ i "navn"
!eregi("\r",$_POST['name']) &&  // tjek, at der ikke er "vogn-retur" i "navn"
!eregi("\n",$_POST['name']) &&  // tjek, at der ikke er "linjeskift" i "navn"
!eregi("\r",$_POST['email']) && // tjek, at der ikke er "vogn-retur" i "email"
!eregi("\n",$_POST['email']))  // tjek, at der ikke er "linjeskift" i "email"

// er alt ok, fortsættes med afsendelse af mailen
{
  $headers="From: ".$_POST['name']."<".$_POST['email'].">";
  if (@$_POST['customer_copy'])
  {
  $headers .= "\r\nBcc: ".$_POST['email'];
  }
  $body .= "Den " . date("d/m y") . " kl. " . date("G:i") . " skrev " . $_POST['name'] . ":\r\n\r\n" . $_POST['besked'];
  if (@mail("kontakt@nicolin.dk", strip_tags($_POST['emne']),
  stripslashes(strip_tags($body)), $headers))
  {
  echo "<p>Tak for din henvendelse. Jeg svarer så hurtigt som muligt.</p>";
  }
  else
  {
  echo "<p>E-mailen blev ikke sendt. Der skete en fejl. Prøv igen!</p>";
  }
}
else
{
  echo "<p>Mailen kunne ikke sendes, alle felter skal udfyldes korrekt!</p>";
}
}
?>
</body>



-------------------------------------------------------------
Her er formularen(http://www.nicolin.dk/kontakt.php)
-------------------------------------------------------------

<form method="post" action="/scripts/sender.php">

              <p>Dit navn:<br>
          <input name = "name" type = "text" id="name" size="40">
          <br>
                </p>
        <p>Din e-mail adresse:<br>
          <input name = "email" type = "text" id="email" size="40">
          <br>
        <p>Overskrift eller emne: <br>
          <input name = "emne" type = "text" id="emne" size="40">
<span style="display:none">Subject:<input id="t7" type="text" name="subject" /></span>
          <br>
        </p>
        <p>Din besked: <br>
          <textarea name = "besked" id="besked" cols="60" rows="8"></textarea><br>
        </p>
        <p>
<input type="checkbox" id="t5" name="customer_copy" />
Vil du have en  kopi tilsendt til din egen e-mail adresse?<br>
<br>

        <input name="submit" type = "submit" id="submit" value="Send besked">
        <input type="reset" name="Reset" value="Ryd felter">
        </p>
      </form>
Avatar billede repox Seniormester
30. september 2009 - 21:35 #1
Måske du kan bruge det her?
http://pastebin.com/m7642d6fd

Du skal egentlig bare passe det ind i din eksisterende HTML.
Avatar billede miss-g Seniormester
01. oktober 2009 - 02:21 #2
Tusind tak - det lykkedes via den side du gav mig! *S*

Så mangler jeg bare et svar så du kan få point.
Avatar billede repox Seniormester
01. oktober 2009 - 08:35 #3
Jamen, selv tak :) Glad for du kunne bruge det :)
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