Avatar billede dennisml Nybegynder
16. december 2009 - 09:31 Der er 6 kommentarer og
1 løsning

email form

Hej. jeg er ved at lave en form som sende en mail. men kan ikke få den til at tjekke om alt er som det skal være..
jeg vil have den tjekker om email indholder @ og er .
okay de har accepteret betingelserne osv.
og ellers om resten indholer data.

<!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=iso-8859-1" />
<title>Untitled Document</title>
<style type="text/css">
<!--
.style1 {color: #FF0000}
body,td,th {
    color: #000;
}
body {
    background-color: #B9E7FF;
}
-->
</style>
</head>

<body>
<div align="center">
  <table width="1000" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td><div align="center">
        <table width="460" height="188" border="0" cellpadding="0" cellspacing="0">
          <tr>
            <td><form action="ughsout.php" method="post">
              <!-- DO NOT change ANY of the php sections -->
              <img src="../grafik/logo.gif" alt="" width="568" height="179" />
              </p>
              <p align="center">&nbsp;</p>
              <hr align="left" />
              <p align="left">
                <?php

$nameis = $_POST['nameis'];
$email = $_POST['email'];
$url = $_POST['url'];
$subject = $_POST['subject'];
$question = $_POST['question'];
$cheakboxsignup = $_POST['cheakboxsignup'];


if (eregi('http:', $feedback)) { die ("Do NOT try that! ! "); }

if((!$email == "@") && (!strstr($email,".")))
{
echo "";
$tellem = "<h2>Feedback was NOT submitted</h2>\n";
}

if(empty($url) || empty($subject) || empty($email)) {
echo "";
}

echo $tellem;

if ($emailvalidation == "y") {
$req1 = "Email format Validation \n" ;
}

if ($fieldvalidation == "y") {
$req2 = "Required Form Field Validation \n";
}
if ($htmlcontrol == "y") {
$req3 = "More intergratd HTML (in form) \n";
}
if ($phpform == "y") {
$req4 = "Improved PHP form script generator \n";
}
if ($htmlform == "y") {
$req5 = "A complete HTML form generator \n";
}
$req = $req1 . $req2 . $req3 . $req4 . $req5;

$todayis = date("l, F j, Y, g:i a") ;

$nameis = $nameis;
$email = $email;
$url = $url;
$subject = $subject;
$question = $question;
$cheakboxsignup = $cheakboxsignup;


$message = " $todayis [EST] \n
From: $nameis ($email)
Url: $url
subject: $subject
Anything els to say: $question
By submitting this application, you agree to the Terms and Conditions: $cheakboxsignup
";

$from = "From: $email\r\n";

mail("MIN EMAIL", $subject, $message, $from);


$screenout = str_replace("\n", "<br/>", $message);
?>
              </p>
            </form>
              <p align="left">&nbsp;</p></td>
          </tr>
          <tr>
            <td><table width="427" border="1" cellspacing="0" cellpadding="0" align="center">
              <tr>
                <td width="423"><div align="left"><?php echo $screenout ?></div></td>
              </tr>
            </table></td>
          </tr>
          <tr>
            <td>&nbsp;</td>
          </tr>
        </table>
      </div></td>
    </tr>
  </table>
</div>
<h3 align="center">&nbsp;</h3>
<p>
<td>&nbsp;</td>
</p>

</body>
</html>
Avatar billede repox Seniormester
16. december 2009 - 12:57 #1
Virker valideringen ikke? Eller validerer den godt nok og sender bare en mail alligevel?
Avatar billede dennisml Nybegynder
16. december 2009 - 13:40 #2
den sender mail lige meget hvad. den tjekker ikke noget.
Avatar billede repox Seniormester
16. december 2009 - 14:43 #3
Din mail funktion ligger også for sig selv; den ligger slet ikke inde i nogle condition clauses.
Har du selv skrevet ovenstående eller er det lånt hist og her?
Avatar billede dennisml Nybegynder
16. december 2009 - 14:58 #4
jeg har hentet den or nogle år siden et sted fra. og så er der blevet rette i den..
skal bare have en der virker.. hehe :D
Avatar billede discotk Nybegynder
16. december 2009 - 17:08 #5
Kontakt.php
___________________________________________
<script type="text/javascript"> 
function val(form)
{
    var theErrors = '';
if (form.navn.value == "")
      theErrors += "*Navn\n";
     
    var regexp = /^\w[\w\.\-]*@\w[\w\-]*\.\w{2}/i;
if (form.email.value!=''&&!form.email.value.match(regexp))
      theErrors += "*Ugyldig e-mail\n";
if (form.email.value == "")
      theErrors += "*E-mail\n";
if (form.email2.value == "")
      theErrors += "*Bekræft e-mail\n";
if (form.email2.value != form.email.value)
      theErrors += "*E-mails passer ikke sammen\n";
        else if (form.email.value != form.email2.value)
            theErrors += "*E-mails passer ikke sammen\n";
      if (form.besked.value == "")
      theErrors += "*Besked\n";
           
            if(theErrors){
    alert(theErrors);
    return false;
  } else {
    return true; }
}
</script>
<form method="post" name="form" action="mail.php" style="width: 238px" onSubmit="return val(form)">

<font face="Verdana" size="1" color="#666666"><b>Dit Navn: <br>
</b>
<input name="navn" size="35" style="font-weight: 700"><b>
<br>
Din e-mail:<br>
</b>
<input name="email" size="35" style="font-weight: 700"><b>
<br>
Bekræft din e-mail:<br>
</b>
<input name="email2" size="35" style="font-weight: 700"><b>
<br><br>
Tekst:
<br>
</b>
<textarea name="besked" rows="4" style="font-weight: 700; width: 254px;"></textarea><b>
<br><br>
</b>
<input type="submit" value="Send besked"><b> </b></font>
</form>


mail.php
______________________________________________
<?php

$navn = $_POST['navn'];
$email = $_POST['email'];
$besked = $_POST['besked'];

$besked = "Navn: $navn\n
E-mail: $email\n
Besked: $besked\n
";

$besked = utf8_decode($besked);

$emne = "(DIT EMNE) " . $navn;

$emne = utf8_decode($emne);

$afsender = "From: DIN@MAIL.dk\r\n";

$afsender = utf8_decode($afsender);


mail("DIN@MAIL.dk", $emne, $besked, $afsender);

?>

Vi kontakter Dem hurtigst muligt : <?php echo $navn ?> ( <?php echo $email; ?> )<br /><br />
<font size="1">De vil automatisk blive sendt videre til kontaktsiden om 5 sek.

<br />
<b>
Hvis ikke, klik <a href="kontakt.php">her</a> for at komme tilbage
</b></font> 
</div>


Så skal du bare ændre "(DIT EMNE)" et sted og "DIN@MAIL.dk" to steder.
Avatar billede repox Seniormester
16. december 2009 - 18:00 #6
#4
Din kode virker ikke af mange forskellige årsager.
Blandt andet bruges der en masse udefinerede variabler, den logiske opbygning af condition clauses er ulogisk og virker derfor ikke hensigten.
Udover det, er koden også en åben invitation til diverse former for spam-robotter.
Du burde finde et alternativ som er mere nutidig og bedre sikret mod robotter.
Avatar billede dennisml Nybegynder
17. december 2009 - 08:58 #7
Hej, tak for hjælpen. har lavet en, brugte en masse fra din discotk. den skulle godt nok være på engelsk :D men takker for hjælpen :D
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