Avatar billede stengaard Praktikant
28. februar 2005 - 21:38 Der er 5 kommentarer og
1 løsning

hvorfor virker min checkbox ikke

hvorfor virker min checkbox ikke sender kun mail hvis checkboksen ikke er hakket af

formularen ser således ud:::

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

<fieldset>
<legend>Husk at udfylde alle felter</legend>

<label for="t1">Navn:</label>
<input id="t1" type="text" name="name" /><br />

<label for="t2">Email:</label>
<input id="t2" type="text" name="email" /><br />

<label for="t3">Emne:</label>
<input id="t3" type="text" name="subject" /><br />

<label for="t4">Besked:</label>
<textarea id="t4" name="message" rows="10" cols="49"></textarea><br />

<label for="t5">Ønskes kopi?</label>
<input type="checkbox" id="t5" name="customer_copy" checked="checked" />

<label for="t6"> </label><input id="t6" type="submit" name="submit" value=" Send mail " />
&nbsp; &nbsp; <input type="reset" value=" Slet alt " />
</fieldset>
</form>


**********************************

sender.php således

<?php
  if (isset($_POST['submit'])) {
    if (!empty($_POST['name']) && !empty($_POST['subject']) &&
    !empty($_POST['email']) && !empty($_POST['message'])) {
      $headers="From: ".$_POST['name']."<".$_POST['email'].">";
      if (@$_POST['customer_copy']) {
        $headers .= "\r\nBcc: ".$_POST['email'];
      }
      if(@mail("mail@domain.dk", strip_tags($_POST['subject']),

      stripslashes(strip_tags($_POST['message'])), $headers)) {
        echo "<p><BR><BR>Tak for din henvendelse. Jeg vender tilbage så hurtigt som muligt.</p>";
      }
      else {
        echo "<p><BR><BR>E-mailen blev ikke sendt. Der skete en fejl. Prøv igen!</p> ";
      }
    }
    else {
      echo "<p>Alle felter skal udfyldes! </p>";
    }
  }
?>
Avatar billede bojo Nybegynder
28. februar 2005 - 22:29 #1
ikke checked="checked" bare checked:

<input type="checkbox" id="t5" name="customer_copy" checked />
Avatar billede detox Nybegynder
28. februar 2005 - 22:43 #2
Nej, din form ser fin nok ud. Koden virker da osse hos mig. Du kan evt. prøve at rette:

$headers .= "\r\nBcc: ".$_POST['email'];

til:

$headers .= "\nBcc: ".$_POST['email'];
Avatar billede detox Nybegynder
28. februar 2005 - 22:44 #3
Men personligt vil jeg foretrække:

if (!empty($_POST['customer_copy'])) {

fremfor:

if (@$_POST['customer_copy']) {
Avatar billede stengaard Praktikant
01. marts 2005 - 20:33 #4
jeg takker
Avatar billede jakoba Nybegynder
01. marts 2005 - 22:22 #5
I adskillige versioner af IE (og muligvis stadig) blev værdierne fra id= og name= lagt i samme interne variabel.  Så når du skriver:
    id="t5" name="customer_copy"
kommer de enten begge til at hedde 't5' eller også begge til at hedde 'customer_copy'.

Så en god tommelfingerregel er altid at give id= og name= samme værdi; så kan du stole på den.

mvh JakobA
Avatar billede detox Nybegynder
09. marts 2005 - 08:41 #6
Så får du da lige et svar fra mig ;o)
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