input form niet volledig

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Bas

bas

22/10/2006 07:53:00
Quote Anchor link
Heb hier een formulier, verzenden lukt. Maar alle info komt in de onderwerpregel van outlook en niet in het bericht. Beide radiobuttons worden niet uitgelezen. Waar zit de fout?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
<?
ob_start(); // Voor het cookie setten, anders zal dat hoogst waarschijnlijk niet werken.
$cNaam = 'Je naam'; // Je naam...
$cEmail = '[email protected]'; // email waar het heen moet
$cOndPre = ''; // prefix voor onderwerp
$cOndSuf = '- van iemand.nl'; // suffix achter onderwerp
$cSpam = 5; // Anti Spam, X aantal minuten
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    <title>Mail Formulier</title>
    <style type="text/css">
        body, input, textarea
            {
            font-size: 10pt;
            color: #000000;
            font-family: Verdana, Arial, Helvetica, sans-serif;
            }
        input, textarea
            {
            border: 1px solid black;
            background-color: #FEFEFE;
            }
    </style>
</head>
<body>
<?
if(!empty($_POST['verstuur']))
    {
// Er is op de knop 'verstuur e-mail' gedrukt...
    $pError = ''; // Een begin met de errors als die er zijn
    $pI = 0; // Deze telt het aantal erros.
    if(strlen($_POST['naam']) < 2)
        {
$pError .= '- Je hebt je naam niet ingevuld!<br>'; $pI++; }
    if(strlen($_POST['email']) < 6 || !ereg('@',$_POST['email']) || !ereg('.',$_POST['email']))
        {
$pError .= '- Je hebt geen geldig email-adres ingevuld!<br>'; $pI++; }
    if(strlen($_POST['onderwerp']) < 3)
        {
$pError .= '- Je hebt geen geldig onderwerp ingevuld!<br>'; $pI++; }
    if($_POST['check'] == nee)
    {
echo "U heeft de algemene voorwaarden niet geaccepteerd";}
    if($_POST['check'] == ja)
    {
echo "Bedankt voor uw opdracht. U heeft de algemene voorwaarden geaccepteerd. Na overmaking van de aanbetaling ontvangt u zo spoedig mogelijk
    een bevestigings mail."
;}

        
    if(!empty($pError))
        {
// Als er dan toch errors zijn..
        echo ($pI == 1) ? 'De volgende fout is opgetreden:<br>' : 'De volgende fouten zijn opgetreden:<br>'; // even kijken of het meervoud of enkelvoud is.
        echo $pError; // echoën van de error(s)
        }
    else
        {
        // uiteindelijk toch mailen :)
        $pHeader  = "MIME-Version: 1.0\r\n";
        $pHeader .= "Content-type: text/html; charset=iso-8859-1\r\n";
        $pHeader .= "To: ".$cNaam." <".$cEmail.">\r\n";
        $pHeader .= "From: ".$_POST['naam']." <".$_POST['email'].">\r\n";
        $website = (!empty($_POST['website'])) ? '<br><br>Website: '.$_POST['website'] : '';
        $pBericht = 'Het volgende bericht is gestuurd via het contact formulier:<br><hr><br>'.$_POST['bericht'].$website;
        mail($cEmail,$cOndPre.' '.$_POST['onderwerp'].' '.$cOndSuf,$pBericht,$pHeader);
                            
        echo 'De e-mail is succesvol verzonden!';
        setcookie('mailform',1,time()+($cSpam*60)); // cookie zetten tegen spam
        
        $pShow = true; // formulier wordt niet weer getoond
        }
    }

    // Kijken of er een waarde moet worden gegeven aan velden...
    $pNaam = (isset($_POST['naam'])) ? $_POST['naam'] : '';
    $pEmail = (isset($_POST['email'])) ? $_POST['email'] : '';
    $pOnderwerp = (isset($_POST['onderwerp'])) ? $_POST['onderwerp'] : '';
    
    
    // kijken of het cookie bestaat, zoja dan wordt het formulier niet getoond.
    if(isset($_COOKIE['mailform']))
        {
$pShow = true; echo 'Je kunt maar eens in de '.$cSpam.' minuten een e-mail versturen!'; }
        
    if(!isset($pShow))
        {
// het formulier als $pShow niet bestaat.
        ?>

        <form method="post" action="<?= $_SERVER['../../PHP_SELF']; ?>">
        
  <dl>
    <dt><b>Naam:</b> <font color="#999999"><i>(verplicht)</i></font></dt>
    <dd>
      <input type="text" name="naam" size="25" value="<?= $pNaam; ?>">
    </dd>
    <dt><b>Email:</b> <font color="#999999"><i>(verplicht)</i></font></dt>
    <dd>
      <input type="text" name="email" size="25" value="<?= $pEmail; ?>">
    </dd>
    <dd>&nbsp; </dd>
    <dt><b>Onderwerp:</b> <font color="#999999"><i>(verplicht)</i></font></dt>
    <dd>
      <input type="text" name="onderwerp" size="25" value="Algemene Voorwaarden<?= $pOnderwerp; ?>">
    </dd>
    <dt>&nbsp;</dt>
  </dl>
  <p>&nbsp;</p><input type="radio" name="check" value="ja"
  <?php if($_POST['check'] == "ja"){echo'checked';} ?>  
> Ja
<input type="radio" name="check" value="nee"
 <?php if($_POST['check'] == "nee"){echo'checked';} ?>  
> Nee

  <p>&nbsp;</p>
  <dl>
    <dd>&nbsp; </dd>
    <dt><b>Formulier opties:</b></dt>
    <dd>
      <input type="submit" value="Verstuur e-mail" name="verstuur">
      <input type="reset" value="Wis velden">
    </dd>
  </dl>
        </form>
        <?
        }
        ?>

</body>
</html>
 
PHP hulp

PHP hulp

18/11/2024 11:48:52
 
Joren de Wit

Joren de Wit

22/10/2006 09:14:00
Quote Anchor link
De radiobuttons worden niet uitgelezen omdat je op regel 39 en 41 geen quotes rond 'nee' en 'ja' hebt staat...

In de body van je bericht moet $_POST['bericht'] komen te staan, maar je hebt daar geen input veld voor in je formulier?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.