Likes Likes:  0
Resultaten 1 tot 15 van de 21
Pagina 1 van de 2 1 2 LaatsteLaatste
Geen
  1. #1
    Op een goede manier velden valideren
    geregistreerd gebruiker
    147 Berichten
    Ingeschreven
    18/01/07

    Locatie
    Cyberspace

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    1 Berichten zijn liked


    Naam: Dion
    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Thread Starter

    Op een goede manier velden valideren

    Hallo,

    Het is misschien stom, maar ik zoek een wat geavanceerdere (lees: betere) manier voor veld validatie.

    Een klein gedeelte van hoe ik het nu doe:

    PHP Code:

    if (empty($_POST['contactpersoon']))
    {
    echo 
    "U heeft geen naam / contactpersoon ingevuld.";
    echo 
    '<p><A HREF="javascript:back()">Terug</A></p>';
    }
    elseif (empty(
    $_POST['email']))
    {
    echo 
    "U heeft geen e-mailadres ingevuld";
    echo 
    '<p><A HREF="javascript:back()">Terug</A></p>';
    }
    elseif (empty(
    $_POST['bericht']))
    {
    echo 
    "U heeft geen bericht ingevuld";
    echo 
    '<p><A HREF="javascript:back()">Terug</A></p>';
    } 
    Uiteraard werkt dit, maar niet als je bijvoorbeeld 2 velden niet invuld. Hij laat dan alleen zien in mijn geval: U heeft geen naam / contactpersoon ingevuld, als ik bijvoorbeeld Contactpersoon en E-mailadres niet in heb gevuld. En om dan met een link terug te moeten is ook niet echt netjes + het feit dat ik dan alle waardes kwijt ben en je die opnieuw in moet vullen.

    Daarnaast, als alle velden goed ingevuld zijn, moet hij alles netjes in sessies gaan zetten. Dat komt na de if/else, maar zou waarschijnlijk ook veel beter kunnen.

    Wie kan mij een nettere / betere manier laten zien, waarop ik kan voortborduren voor veldvalidatie. Nog tips voor het gebruik van sessies e.d.?
    Als het formulier goed ingevuld is, gaat de klant naar de volgende pagina met een overzicht van de kosten, daarna een pagina met overzicht van de contactgegevens en dan bevestigen algemene voorwaarden. Als de klant dan submit, moet alles daadwerkelijk naar de database geschreven worden.

    Ben ook met een array aan het prutsen geweest, maar dat werd ook niet echt duidelijker.

  2. #2
    Op een goede manier velden valideren
    geregistreerd gebruiker
    5.163 Berichten
    Ingeschreven
    04/06/05

    Locatie
    Zeeland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Als je kan melden dat iemand iets is vergeten kan je ook de waardes terug in de ingevulde velden zetten. Je kan laten submitten naar het formulier en als er waardes leeg zijn nogmaals het formulier tonen, zijn de juiste waardes aanwezig dan toon je het volgende formulier of wat dan ook.

  3. #3
    Op een goede manier velden valideren
    moderator
    5.444 Berichten
    Ingeschreven
    12/09/05

    Locatie
    Zuid Holland

    Post Thanks / Like
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)
    110 Berichten zijn liked


    Naam: Stijn
    KvK nummer: 14074337

    Ik raad je sowieso aan om te checken of de input wel klopt ipv alleen te checken of de input bestaat.
    Bij het email adres met een regex even checken of het wel een valide mailadres is.
    De standpunten en meningen op dit discussieforum zijn persoonlijk van aard en vertegenwoordigen in geen geval eventuele officiële standpunten van derden.
    Lees hier de webhostingtalk.nl forum regels en voorwaarden!

  4. #4
    Op een goede manier velden valideren
    geregistreerd gebruiker
    147 Berichten
    Ingeschreven
    18/01/07

    Locatie
    Cyberspace

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    1 Berichten zijn liked


    Naam: Dion
    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Thread Starter
    Citaat Oorspronkelijk geplaatst door crazycoder Bekijk Berichten
    Als je kan melden dat iemand iets is vergeten kan je ook de waardes terug in de ingevulde velden zetten. Je kan laten submitten naar het formulier en als er waardes leeg zijn nogmaals het formulier tonen, zijn de juiste waardes aanwezig dan toon je het volgende formulier of wat dan ook.
    Ik kan fout zijn, maar als je POST waardes eenmaal gepost hebt, dan zijn ze daarna toch "weg" ? Ik dacht dat na een druk op Submit, deze slechts eenmaal als $_POST['var'] beschikbaar zijn.

    Citaat Oorspronkelijk geplaatst door Stewie Bekijk Berichten
    Ik raad je sowieso aan om te checken of de input wel klopt ipv alleen te checken of de input bestaat.
    Bij het email adres met een regex even checken of het wel een valide mailadres is.
    Die heb ik Stewie, staan nog niet in wat ik net postte, omdat ik die nog aan het maken was. Ik doe graag alles zelf, met af en toe een duw in de goede richting. Gaat niet zo snel, maar wel steeds beter. Zo heb ik ook net en regex voor de postcode "ontdekt".
    Laatst gewijzigd door Dion Wales; 20/05/08 om 00:41. Reden: Automerged Dubbelpost

  5. #5
    Op een goede manier velden valideren
    geregistreerd gebruiker
    1.354 Berichten
    Ingeschreven
    17/06/03

    Locatie
    Delft

    Post Thanks / Like
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    24 Berichten zijn liked


    Naam: Michiel Thalen
    KvK nummer: 02084745

    Ja en dan kan je toch weer het formulier printen, met de ingevulde waarden.

  6. #6
    Op een goede manier velden valideren
    geregistreerd gebruiker
    5.163 Berichten
    Ingeschreven
    04/06/05

    Locatie
    Zeeland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Citaat Oorspronkelijk geplaatst door Dion Wales Bekijk Berichten
    Ik kan fout zijn, maar als je POST waardes eenmaal gepost hebt, dan zijn ze daarna toch "weg" ? Ik dacht dat na een druk op Submit, deze slechts eenmaal als $_POST['var'] beschikbaar zijn.
    Je moet jezelf niet door dat soort kleinigheden laten weerhouden

    Simpel geschreven, let op: regex e.d. ontbreken om het voorbeeld simpel te houden:

    $naam='';

    if(!empty($_POST['naam'])){
    $naam=$_POST['naam'];
    }

    <input type="text" name="naam" value="<?php echo $naam;?>">
    Zal gewoon de waarde van $naam in het input veld weergeven.

    Wil je dit echt netjes doen dan bepaal je eerst of het formulier nodig is. Dat zou bijvoorbeeld kunnen door te bepalen of waardes leeg zijn. Doe dat bij voorkeur na regex e.d. zodat je ook ongeldige waardes opnieuw in kan laten vullen. Waardes die niet voldoen kan je leeg maken, dan zou iets als:
    if(empty($naam) || empty($straat)){
    hier het formulier tonen.
    }
    dit op moeten kunnen lossen..

  7. #7
    Op een goede manier velden valideren
    geregistreerd gebruiker
    147 Berichten
    Ingeschreven
    18/01/07

    Locatie
    Cyberspace

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    1 Berichten zijn liked


    Naam: Dion
    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Thread Starter
    @crazycoder: Dank je, ik zal dit eens proberen

  8. #8
    Op een goede manier velden valideren
    geregistreerd gebruiker
    14 Berichten
    Ingeschreven
    15/03/06

    Locatie
    IJhorst

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Ik zou het als volgt doen.

    <?php

    if(!preg_match('REGEX NAAM',$_POST['naam']))
    $errors[] = 'Ongeldige naam';
    if(!preg_match('REGEX MAIL',$_POST['email']))
    $errors[] = 'Ongeldig email adres';

    if(!isset($errors))
    {
    //form verzenden / opslaan
    }
    else
    {
    //form weergegeven. Waardes erin plaatsen

    //errors weergeven
    echo '<ul>';
    foreach($errors as $error)
    {
    echo '<li>'.$error.'</li>';
    }
    echo '/<ul>';
    }
    ?>

  9. #9
    Op een goede manier velden valideren
    Dutch Identity
    147 Berichten
    Ingeschreven
    14/11/06

    Locatie
    Leiden

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: 27307916
    Ondernemingsnummer: nvt

    Om het nog mooier te maken kun je het ook doen d.m.v. AJAX.

    Hoe dan? Simpel.
    Als de gebruiker een veld heeft ingevuld en naar het volgende veld gaat word er op de achtergrond een request gedaan naar bijv. contoller.php?id=..&&value=..

    Mocht het goed zijn word de box groen van kleur, als het fout is word die rood. Zo ziet de klant direct of iets wel of niet goed is. En scheelt het weer wachttijd.

    Als laatste opmerking zou ik graag meegeven dat dit geen super goede beveiliging is. Server-site moet je dan ook nog steeds controleren. Mensen kunnen javascript uitschakelen.

    Makkelijker kunnen we het niet maken, wel mooier

  10. #10
    Op een goede manier velden valideren
    geregistreerd gebruiker
    4.175 Berichten
    Ingeschreven
    09/12/05

    Locatie
    Almere

    Post Thanks / Like
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)
    76 Berichten zijn liked


    Naam: Ramon Fincken
    Bedrijf: Klarned Managed Hosting / Halvar.io
    Functie: CEO
    URL: www.klarned.is
    Registrar SIDN: Nee
    KvK nummer: 30262182
    TrustCloud: ramonfincken
    View ramonfincken's profile on LinkedIn

    jep altijd serverside doen ! maar daarnaast kan javascript een handige aanvulling zijn
    Klarned Managed hosting Hosting, optimalisatie & debugging door WP Core developers

  11. #11
    Op een goede manier velden valideren
    geregistreerd gebruiker
    65 Berichten
    Ingeschreven
    04/10/07

    Locatie
    Groningen

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Citaat Oorspronkelijk geplaatst door crazycoder Bekijk Berichten
    <input type="text" name="naam" value="<?php echo $naam;?>">
    Zal gewoon de waarde van $naam in het input veld weergeven.
    PHP Code:
    echo htmlspecialchars($naam, ENT_QUOTES); 
    Om te voorkomen dat html/javascript geparsed wordt door de browser.

  12. #12
    Op een goede manier velden valideren
    IT Professional
    537 Berichten
    Ingeschreven
    05/03/06

    Locatie
    Herentals (België)

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    1 Berichten zijn liked


    Registrar SIDN: Nee
    KvK nummer: NVT
    Ondernemingsnummer: 879822068

    Nog een voorbeeldje:
    PHP Code:
                    <?php
                        
    function control ($variabele) {
                            
    $variabele = Addslashes($variabele);
                            
    $variabele = htmlentities($variabele);
                            
    $variabele = trim($variabele);
                            return 
    $variabele;
                        }
                        if (
    $_POST["send"] == "yes") {
                            
    $error = false;
                            
    $item = "";
                            if (empty(
    $_POST["title"])) {
                                
    $error = true;
                                
    $item .= "<li>Onderwerp</li>";
                            }
                            if (empty(
    $_POST["message"])) {
                                
    $error = true;
                                
    $item .= "<li>Bericht</li>";
                            }
                            if (empty(
    $_POST["name"])) {
                                
    $error = true;
                                
    $item .= "<li>Naam</li>";
                            }
                            if (empty(
    $_POST["email"])) {
                                
    $error = true;
                                
    $item .= "<li>E-mail</li>";
                            }
                            if (
    $error) {
                                echo(
    "<p>Fout! U vergat de volgende velden in te vullen:</p> \n");
                                echo(
    "<ul class=\"contact-error\"> \n");
                                echo(
    "$item \n");
                                echo(
    "</ul> \n");                            
                                echo(
    "<p><a href=\"javascript:history.go(-1)\" title=\"Keer terug\">Klik hier</a> om terug te keren naar het contactformulier.</p> \n");
                                exit();
                            } else 
    blablabla....

  13. #13
    Op een goede manier velden valideren
    geregistreerd gebruiker
    1.354 Berichten
    Ingeschreven
    17/06/03

    Locatie
    Delft

    Post Thanks / Like
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    24 Berichten zijn liked


    Naam: Michiel Thalen
    KvK nummer: 02084745

    Als je met javascript / ajax -> jquery wil werken.
    Zelf gebruik ik http://bassistance.de/jquery-plugins...in-validation/
    Werkt erg fijn.
    Natuurlijk moet je ook nog serverside checken. Ik heb een class geschreven die beide integreert, (en die jquery class wat aangepast) maar dat gaat denk ik iets te ver.

    Voorbeeld: http://www.uitslovers.nl/registreer

  14. #14
    Op een goede manier velden valideren
    aktieve deelnemer
    2.782 Berichten
    Ingeschreven
    10/05/02

    Locatie
    Noordwest Holland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: Ja
    KvK nummer: 37093085
    Ondernemingsnummer: nvt

    Persoonlijk zou ik kiezen voor een AJAX/PHP based oplossing. Waarbij je dmv AJAX serverside de input valideert en eventuele error messages doorstuurt. Vervolgens kan je dezelfde serverside validatie ook gebruiken wanneer iemand geen javascript ondersteund.

  15. #15
    Op een goede manier velden valideren
    geregistreerd gebruiker
    5.163 Berichten
    Ingeschreven
    04/06/05

    Locatie
    Zeeland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Citaat Oorspronkelijk geplaatst door dirk939 Bekijk Berichten
    PHP Code:
    echo htmlspecialchars($naam, ENT_QUOTES); 
    Om te voorkomen dat html/javascript geparsed wordt door de browser.
    Zoals ik al in mijn posting aangaf:
    let op: regex e.d. ontbreken om het voorbeeld simpel te houden.

    Ik ben om eerlijk te zijn ook niet echt van plan om een kant en klaar oplossing te posten. Daar leert ts niets van.

Pagina 1 van de 2 1 2 LaatsteLaatste

Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics