Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

alles ingevuld toch foutmelding

None
5 antwoorden
  • beste PHP-ers,
    ik heb weer een poging gewaagd en voor een kennis een bestaand script aangepast maar waarschijnlijk iets over het hoofd gezien: een foutmelding dat een veld niet ingevuld is ondanks dat alle velden wel ingevuld zijn.
    Wie ziet mijn 'blunder'
    [quote:b47e08963d]<!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" xml:lang="en" lang="en">

    <head>
    <title>inschrijven</title>
    </head>

    <body>
    <?php
    $ip = $_SERVER['REMOTE_ADDR'];
    if ($_POST['SUBMIT']) {
    $voornaam = addslashes($_POST['voornaam']);
    $achternaam = addslashes($_POST['achternaam']);
    $email = addslashes($_POST['email']);
    $onderwerp = addslashes($_POST['onderwerp']);
    $bericht = nl2br(addslashes($_POST['bericht']));
    if (empty($bericht) || empty($email))
    if (empty($_POST['vkd1']) && empty($_POST['vkd2']) && empty($_POST['vkd3'])&& empty($_POST['vkd4'])&& empty($_POST['vkd5'])) $vkd = "Er is geen workshop opgegeven";
    else $vkd = "De workshops(s) zijn ".htmlspecialchars($_POST['vkd1'])." ".htmlspecialchars($_POST['vkd2'])."".htmlspecialchars($_POST['vkd3'])."".htmlspecialchars($_POST['vkd4'])." ".htmlspecialchars($_POST['vkd5']);
    {
    die( "Je hebt 1 of meer velden niet ingevuld!");
    }
    $verzendbericht = "Dit is een bericht afkomstig vanaf Kizuri.nl. Het is verzonden door ".$voornaam." ".$achternaam." vanaf IP ".$ip." en met emailadres ".$email.".<br>
    ".$vkd."<br>
    Dit is het bericht:<br>
    ".$bericht;
    $headers = "MIME-Version: 1.0
    ";
    $headers .= "Content-type: text/html; charset=iso-8859-1
    ";
    $headers .= "X-Priority: 3
    ";
    $headers .= "X-MSMail-Priority: Normal
    ";
    $headers .= "X-Mailer: php
    ";
    $headers .= "From: \"".$naam."\" <".$email.">
    ";
    $verzendbericht = stripslashes($verzendbericht);
    $onderwerp = stripslashes($onderwerp);
    mail("xxx@xxxxx.vb", $onderwerp, $verzendbericht, $headers);
    echo "Uw bericht is verzonden. U zult spoedig een antwoord krijgen.";
    }

    // niet gesubmit:
    else {
    ?>
    <style type="text/css">
    <!–
    body,td,th {
    font-family: Arial, Helvetica, sans-serif;
    line-height: 160%;
    }
    –>
    </style>
    <h2>inschrijven voor een workshop
    </h2>
    <form method="POST">
    <table border="0" width="400">
    <tr>
    <td width="200">Voornaam:</td>
    <td><input type="TEXT" name="voornaam" width="200"></td>
    </tr>
    <tr>
    <td>Achternaam:</td>
    <td><input type="TEXT" name="achternaam" width="200"></td>
    </tr>
    <tr>
    <td>Adres:</td>
    <td><input type="TEXT" name="adres" width="200"></td>
    </tr>
    <tr>
    <td>Postcode:</td>
    <td><input type="TEXT" name="postcode" width="200"></td>
    </tr>
    <tr>
    <td>Woonplaats:</td>
    <td><input type="TEXT" name="woonplaats" width="200"></td>
    </tr>
    <tr>
    <td>Telefoonnummer:</td>
    <td><input type="TEXT" name="telefoon" width="200"></td>
    </tr>
    <tr>
    <td>Emailadres:</td>
    <td><input type="TEXT" name="email" width="200"></td>
    </tr>
    </table>
    <br>
    <h3>Workshop</h3>
    <input name="vkd1" type="checkbox" value="3 november2007 klankschalenworkshop">
    klankschalen op 3 november 2007<br>
    <input name="vkd2" type="checkbox" value="23 februari 2008 adem en ontspanning">
    adem en ontspanning op 23 februari 2008<br>
    <input name="vkd3" type="checkbox" value="8 maart 2008 leren mediteren">
    leren mediteren op 8 maart 2008<br>
    <input name="vkd4" type="checkbox" value="12 april 2008 klankschalenworkshop">
    klanksschalenworkshop op 12 april 2008<br>
    <input name="vkd5" type="checkbox" value="17 mei 2008 leren mediteren">
    leren mediteren op 17 mei 2008<br><br>



    <font face="Courier New, Courier, monospace">
    <textarea name="bericht" cols="41" rows="10" >
    Typ hier uw informatie / vragen
    </textarea>
    </font>
    <br>
    <input type="SUBMIT" name="SUBMIT" value="Versturen">
    <input type="reset" name="reset" value="Opnieuw">
    </form>
    <?php
    }
    ?>
    </body>

    </html> [/quote:b47e08963d]
  • Als je netjes gebruikt maakt van accolades en inspringing dan zie je dat er eigenlijk staat:
    [code:1:5feb01058b]if (empty($bericht) || empty($email)) {
    if (empty($_POST['vkd1']) && empty($_POST['vkd2']) && empty($_POST['vkd3'])&& empty($_POST['vkd4'])&& empty($_POST['vkd5'])) {
    $vkd = "Er is geen workshop opgegeven";
    }
    else {
    $vkd = "De workshops(s) zijn ".htmlspecialchars($_POST['vkd1'])." ".htmlspecialchars($_POST['vkd2'])."".htmlspecialchars($_POST['vkd3'])."".htmlspecialchars($_POST['vkd4'])." ".htmlspecialchars($_POST['vkd5']);
    }
    }
    {
    die( "Je hebt 1 of meer velden niet ingevuld!");
    } [/code:1:5feb01058b]
    Ofwel de foutcode wordt altijd gegenereerd.
    Geen idee wat vdk is en wat je wil maar misschien dat je er zelf nu wel uitkomt.
  • vdk staat voor voorkeursdag, keuze van workshop in de checkbox.
    maar ik ben er nog neit uit helaas… (testformulier: http://www.webquestion.nl/inschrijfformulier2.php)
  • ik denk toch echt dat je meer kennis van PHP moet gaat nemen. Verder heb ik mijn twijfels of het formulier wel in elkaar zit zoals je zou willen. Nogmaals, met kennis van PHP kan je daaruit komen. Wij zijn hier niet om het allemaal voor te kauwen. Maar om je eerste probleem te verhelpen: Wijzig de code van hierboven in:
    [code:1:23949e3576]if (empty($bericht) || empty($email)) {
    die( "Je hebt 1 of meer velden niet ingevuld!");
    }
    if (empty($_POST['vkd1']) && empty($_POST['vkd2']) && empty($_POST['vkd3'])&& empty($_POST['vkd4'])&& empty($_POST['vkd5'])) {
    $vkd = "Er is geen workshop opgegeven";
    }
    else {
    $vkd = "De workshops(s) zijn ".htmlspecialchars($_POST['vkd1'])." ".htmlspecialchars($_POST['vkd2'])."".htmlspecialchars($_POST['vkd3'])."".htmlspecialchars($_POST['vkd4'])." ".htmlspecialchars($_POST['vkd5']);
    }

    [/code:1:23949e3576]
  • beste marientje,
    dank voor je hulp.
    er zaten meerdere fouten in het script maar net deze laatste kreeg ik er niet meer uit.
    php opfrissen is waar ik nu mee bezig ben……. langzaam aan begint het weer te dagen,
    Niet alle gegevens van het formulier komen binnen (vermoedde jij al) maar ik heb nu wel een werkend script waar ik mee verder kan…..

    groetjes

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.