jeanmi
Gebruiker
- Lid geworden
- 24 aug 2001
- Berichten
- 262
Ik heb een bestelformulier gemaakt die voor 99% goed werkt, behalve dat ik de controle over de radiobuttons "Opsturen" of "Afhalen" niet onder controle krijg. De bedoeiling is dat de afzender eerst een keuze moet maken tussen de twee en indien hij dit niet doet hierover een foutmelding krijgt. Ook krijg ik het niet voor elkaar om de keuze in de mail zelf te maten verschijnen.
Hierbij de ganse code. Wie helpt mij aan de oplossing. Bedankt op voorhand
Mvg,
Hierbij de ganse code. Wie helpt mij aan de oplossing. Bedankt op voorhand
Mvg,
PHP:
<?php
// Variabelen:
$voornaam = ""; //Voornaam van de afzender
$naam = ""; // Naam van de afzender
$emailadres = ""; // E-mailadres van de afzender
$straat = ""; //Straat en nummer van de afzender
$pc = ""; //Postcode van de afzender
$gemeente = ""; //Gemeente of stad van de afzender
$tel = ""; //Telefoon van de afzender
$tekst = ""; // Tekst van het e-mailbericht
$getal = ""; //keuze van de afzender
$vervuild = FALSE; // TRUE als het formulier geen fouten bevat
$verzonden = FALSE; // TRUE als het e-mailbericht is verzonden
$melding = ""; // String voor (fout)meldingen
// Formulier alleen verwerken als er op een knop met de naam 'submit' is geklikt ...
if (isset($_POST['submit'])) {
// ... en deze knop de waarde 'Verzenden' heeft:
if ($_POST['submit'] == "Verzenden") {
$voornaam = $_POST['v'];
$naam = $_POST['n'];
$emailadres = $_POST['e'];
$straat = $_POST['s'];
$pc = $_POST['p'];
$gemeente = $_POST['g'];
$tel = $_POST['a'];
$tekst = $_POST['t'];
$getal = $_POST['rb'];
// HTML-tags en PHP-code verwijderen:
$voornaam = strip_tags($voornaam);
$naam = strip_tags($naam);
$emailadres = strip_tags($emailadres);
$straat = strip_tags($straat);
$pc = strip_tags($pc);
$gemeente = strip_tags($gemeente);
$tel = strip_tags($tel);
$tekst = strip_tags($tekst);
$getal = strip_tags($getal);
// Spaties en andere witruimte verwijderen uit de naam en het e-mailadres,
// maar niet uit de tekst van het bericht:
$voornaam = trim($voornaam);
$naam = trim($naam);
$emailadres = trim($emailadres);
$straat = trim($straat);
$pc = trim($pc);
$gemeente = trim($gemeente);
$tel = trim($tel);
if (strlen($voornaam) < 1) {
$melding .= "Voer uw <strong>Voornaam</strong> in. ";
$vervuild = TRUE;
}
if (strlen($naam) < 1) {
$melding .= "Voer uw <strong>Achternaam</strong> in. ";
$vervuild = TRUE;
}
if (strlen($straat) < 1) {
$melding .= "Voer uw <strong>Straatnaam en nummer</strong> in. ";
$vervuild = TRUE;
}
if (strlen($pc) < 1) {
$melding .= "Voer uw <strong>Postcode</strong> in. ";
$vervuild = TRUE;
}
if (strlen($gemeente) < 1) {
$melding .= "Voer uw <strong>Woonplaats</strong> in. ";
$vervuild = TRUE;
}
if (strlen($tel) < 1) {
$melding .= "Voer uw <strong>Telefoonnumer</strong> in. ";
$vervuild = TRUE;
}
if (strlen($emailadres) < 1) {
$melding .= "Voer uw <strong>e-mailadres</strong> in. ";
$vervuild = TRUE;
} else {
require_once('is_email.inc.php');
if (!is_email($emailadres)) {
$melding .= "<strong>" . htmlentities($emailadres) . "</strong> is geen geldig e-mailadres. ";
$vervuild = TRUE;
}
}
if (strlen($tekst) < 1) {
$melding .= "U moet nog uw <strong>Bestelling</strong> opgeven ";
$vervuild = TRUE;
}
if (strlen($getal)==1){
echo("mijn artikel wordt opgestuurd");}
elseif($getal==2){
echo("ik haal artikel zelf af, na afspraak");}
else("u moet nog een keuze maken");}
// E-mailbericht verzenden als de gegevens niet vervuild zijn:
if (!$vervuild) {
// Constante voor het e-mailadres van de ontvanger:
define("AAN", "hier staat mijn mailadres");
// Constante voor het onderwerp:
define("ONDERWERP", "Bestelformulier");
// Headers met de naam en het e-mailadres van de gebruiker:
$headers = "From: \"$naam\" <$emailadres>\r\n";
$headers .= "Reply-To: \"$naam\" <$emailadres>\r\n";
// Naam en e-mailadres toevoegen aan de tekst:
$tekst .= "\r\n\r\v$voornaam";
$tekst .= "\r\n\r\n$naam";
$tekst .= "\r\n<$emailadres>";
$tekst .= "\r\n\r\s$straat";
$tekst .= "\r\n\r\p$pc";
$tekst .= "\r\n\r\g$gemeente";
$tekst .= "\r\n\r\a$tel";
if (mail(AAN, ONDERWERP, $tekst, $headers)) {
$verzonden = TRUE;
$melding = "Hartelijk dank voor uw reactie. ";
$melding .= "U ontvangt zo snel mogelijk antwoord. ";
} else {
$verzonden = FALSE;
$melding = "Uw bericht kon niet worden verzonden. ";
$melding .= "Wijzig het e-mailadres of probeer het later nog een keer. ";
}
}
}
// Standaardtekst voor instructies instellen als er geen foutmeldingen zijn:
if ($melding == "") {
$melding = "Alle velden zijn verplicht en correct in te vullen <br>";
$melding .= "<hr>";
}
?>
<p><?php echo $melding; ?></p>
<?php
// Formulier weergeven als de gegevens vervuild zijn
// of het e-mailbericht niet verzonden is:
if ($vervuild or !$verzonden) {
$voornaam = htmlentities($voornaam);
$naam = htmlentities($naam);
$emailadres = htmlentities($emailadres);
$straat = htmlentities($straat);
$pc = htmlentities($pc);
$gemeente = htmlentities($gemeente);
$tel = htmlentities($tel);
$tekst = htmlentities($tekst);
$getal = htmlentities($getal);
?>
<form action="<?php echo $_SERVER['SCRIPT_NAME']; ?>" method="post">
<table border="0" cellpadding="0" cellspacing="2">
<tr>
<td width="48%" height="35"><label for="v"><span class="stijl1" style="text-decoration: underline">V</span><span class="stijl1">oornaam:</span></label></td>
<td width="52%"><input name="v" type="text" class="plaats" id="v" accesskey="v" value="<?php echo $voornaam; ?>" size="46"></td>
</tr>
<tr>
<tr>
<td width="48%" height="35"><label for="n"><span class="stijl1" style="text-decoration: underline">N</span><span class="stijl1">aam:</span></label></td>
<td width="52%"><input name="n" type="text" class="plaats" id="n" accesskey="n" value="<?php echo $naam; ?>" size="46"></td>
</tr>
<tr>
<td height="35" nowrap><label for="e"><span class="stijl1" style="text-decoration: underline">E</span><span class="stijl1">-mailadres:</span></label></td>
<td><input name="e" type="text" class="plaats" id="e" accesskey="e" value="<?php echo $emailadres; ?>" size="46"></td>
</tr>
<tr>
<td width="48%" height="35"><label for="s"><span class="stijl1" style="text-decoration: underline">S</span><span class="stijl1">traat & Nr:</span></label></td>
<td width="52%"><input name="s" type="text" class="plaats" id="s" accesskey="s" value="<?php echo $straat; ?>" size="46"></td>
</tr>
<tr>
<td width="48%" height="35"><label for="p"><span class="stijl1" style="text-decoration: underline">P</span><span class="stijl1">ostcode:</span></label></td>
<td width="52%"><input name="p" type="text" class="plaats" id="p" accesskey="p" value="<?php echo $pc; ?>" size="46"></td>
</tr>
<tr>
<td width="48%" height="35"><label for="g"><span class="stijl1" style="text-decoration: underline">W</span><span class="stijl1">oonplaats:</span></label></td>
<td width="52%"><input name="g" type="text" class="plaats" id="g" accesskey="g" value="<?php echo $gemeente; ?>" size="46"></td>
</tr>
<tr>
<td width="48%" height="35"><label for="a"><span class="stijl1" style="text-decoration: underline">T</span><span class="stijl1">elefoon:</span></label></td>
<td width="52%"><input name="a" type="text" class="plaats" id="a" accesskey="a" value="<?php echo $tel; ?>" size="46"></td>
</tr>
<tr>
<td height="35" colspan="2">
<label for="t" class="stijl1"><span style="text-decoration: underline">T</span>ekst van uw e-mailbericht:</label> </td>
</tr>
<tr>
<td colspan="2"><textarea name="t" cols="60" rows="12" class="plaats" id="t" accesskey="t"><?php echo $tekst; ?></textarea></td>
</tr>
</table>
<p><input class="plaats" name="rb" type="radio" id="cb" value="1">Opsturen
<input class="plaats" name="rb" type="radio" id="cb" value="2">Afhalen</p>
<table border="0" cellpadding="0" cellspacing="2">
<tr>
<td height="35"> </td>
<td align="right">
<div align="left">
<input class="knop" name="submit" type="submit" value="Verzenden">
<input class="knop" name="submit" type="submit" value="Wissen">
</div></td>
</tr>
</table>
</form>
<?php
}
?>