• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Beta-testers gezocht voor Crypto-oefenplatform

    Syntax 29 januari 2026 om 16:11
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 19 januari 2026 om 09:34
  • Developer Gezocht

    Mikevdk 10 januari 2026 om 18:57
  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • [FREE] WeFact Hosting module

    Jeroen.G 13 oktober 2025 om 14:09
  • Help testers nodig voor android app Urgent

    urgentotservices 26 september 2025 om 10:21
  • Versio vervanger

    Jeroen.G 25 augustus 2025 om 15:56
  • Afspraken systeem met planbeperking

    Lijno 1 augustus 2025 om 23:04

Marktplaats

  • 350 Nieuwe Domeinnamen Januari 2026

    shiga 1 februari 2026 om 14:21
  • 321 Nieuwe Domeinnamen December 2025

    shiga 1 januari 2026 om 10:26
  • Meerdere mafia game template te koop

    Syntax 26 december 2025 om 00:07

Fout validatie email

  • FrankY
  • 24 januari 2011 om 20:41
  • FrankY
    Another one bites the dust.
    Ontvangen Reacties
    3
    Berichten
    598
    • 24 januari 2011 om 20:41
    • #1

    Beste,
    voor een project van mij wil ik graag OOP toevoegen. Nou heb ik een functie voor het valideren van een email, in die functie staat FILTER_VALIDATE_EMAIL. Ik wil dat als de email niet klopt dat hij false weer geeft. Met een if heb ik de functie opgeroepen.

    Echter het probleem is dat hij het niet doet. Als ik de email goed invul geeft ie toch een melding aan van dat ie niet klopt. Weet misschien iemand hoe ik dit kan oplossen?

    Dit is de code:

    PHP
    <?php
    //Deze source is gebouwd door Frank sijbom.
    
    
    $mysqli = new mysqli("192.168.0.100","unitedwa_systeem","*****","unitedwa_systeem");
    
    
    if(mysqli_connect_errno()) {
    	printf("Connect failed: %s\n", mysqli_connect_error());
    	exit;
    }
    
    
    if(isset($_POST['submit'])) {
    
    
    	$fout = array();
    	
    	$naam = $mysqli->real_escape_string($_POST['naam']);
    	$email = $mysqli->real_escape_string($_POST['email']);
    	$woonplaats = $mysqli->real_escape_string($_POST['woonplaats']);
    	$mobiel = $mysqli->real_escape_string($_POST['mobiel']);
    	$opmerking = $mysqli->real_escape_string($_POST['opmerking']);
    	
    	class Keuren {
    		public function EmailKeuren($email) {
    			if(filter_var($email,FILTER_VALIDATE_EMAIL)) {
    				return true;
    			} else {
    				return false;
    			}
    		}
    	}
    	
    	$keuren = new Keuren();
    	$keuren->EmailKeuren($email);
    	
    	if(empty($naam)) {
    		$fout[] = 'U heeft uw naam niet ingevult!';
    	}
    	
    	if(empty($email)) {
    		$fout[] = 'U heeft uw email adres niet ingevult!';
    	}
    	
    	if(empty($woonplaats)) {
    		$fout[] = 'U heeft uw woonplaats niet ingevult!';
    	}
    	
    	if(empty($mobiel)) {
    		$fout[] = 'U heeft uw mobiele nummer niet opgegeven!';
    	}
    	
    	if(empty($opmerking)) {
    		$fout[] = 'U heeft geen opmerking ingevult!';
    	}
    	
    	if($keuren->EmailKeuren != true) {
    		$fout[] = 'Uw email adres klopt niet!';
    	}
    	
    	$fouten = count($fout);
    	
    	if($fouten > 0) {
    		echo '<div style="font-weight: bold;">U heeft iets niet goed ingevult!</div><br />';
    		for($i = 0; $i < $fouten; $i++) {
    			echo '<div style="font-style: italic;">- '. $fout[$i] .'</div>';
    		}
    		echo '<br />';
    	} else {
    		echo 'U heeft alles goed ingevult, er is een email naar de developer gestuurd!';
    	}
    }
    ?>
    Hier kunt U uw project opsturen, dit word dan bekeken door een van de developers. U krijgt zo spoedig mogelijk bericht van de developer die U gaat helpen.<br />
    <br />
    <form method="post" action="">
    	<div style="width: 240px; float: left;">* Contact naam: <input type="text" size="15" name="naam" /></div>
    	<div style="width: 240px; float: left">* Email: <input type="text" size="20" name="email" /></div>
    	<div style="width: 240px; float: left">* Woonplaats.: <input type="text" size="15" name="woonplaats" /></div>
    	<div style="width: 240px; float: left">* Contact Mob.: <input type="text" size="15" name="mobiel" /></div>
    	<div style="width: 480px; float: left"><br />* Eventuele opmerking:<br /><textarea name="opmerking" cols="60%" rows="8%">Hier uw opmerking</textarea></div>
    	<div style="width: 480px; float: left;"><input type="submit" name="submit" value="Stuur op!" />* = vereist!</div>
    	</form>
    <?php
    $mysqli->close();
    ?>
    Toon Meer

    Met vriendelijke groet,
    Frank sijbom

    Bezig met cms:)

  • Guest, wil je besparen op je domeinnamen? (ad)
  • Jannick
    nyan nyan nyan nyan
    Berichten
    1.972
    • 24 januari 2011 om 20:54
    • #2

    Dit is niet objectgeorienteerd, trouwens; dat kan beter en compacter, desgewenst nog de HTML compleet gescheiden van PHP
    Je kan het beter opvragen met direct de filter_var in een if-je. En nog een tip: Je kan direct dit doen:
    return filter_var($email, FILTER_VALIDATE_EMAIL); aangezien deze functie al true of false retourneert is dit overbodig.

    In je staat dit: ($keuren->EmailKeuren). Je moet er haakjes omheen doen, en een variabele meegeven, wat je op lijn 32 doet is namelijk nutteloos, er wordt daar true geretourneerd maar het wordt nergens in opgeslagen. Dus van lijn 54 kan je het beste dit maken:
    if(!$keuren->EmailKeuren($email))
    Langer:
    if not $keuren->EmailKeuren > true, dan foutmelding weergeven.

    En hoe ik het zou doen:

    PHP
    <?php
    if(!filter_var($email, FILTER_VALIDATE_EMAIL))
    {
    echo 'Meh, niet goed!';
    }
    ?>

    Succes :)

  • Tim
    Enlightened
    Ontvangen Reacties
    77
    Berichten
    3.686
    • 24 januari 2011 om 21:03
    • #3

    Naast dat mijn eigen voorkeur uit gaat naar een regex... is zoals gezegd is dit niet OOP.

    Sterker nog, het is een mislukte poging. Je maakt namelijk geen klasse aan voor maar één methode.

    Master student IT-recht en Master student Ondernemingsrecht & software ingenieur
    My Personal profile
    My professional profile (LinkedIn/CV)

  • FrankY
    Another one bites the dust.
    Ontvangen Reacties
    3
    Berichten
    598
    • 24 januari 2011 om 21:03
    • #4

    Thx jannick hij klopt, ik ga niet met if(!filter_var()) { } doen omdat ik stapje voor stapje meer wil leren. Als het het nog niet is jammer. Ik probeer zo veel mogelijk te leren en zonder fouten kom ik erniet.

    Ik heb precies gedaan wat je zei dus voor de mensen die oplossing willen weten staat hier boven.

    Met vriendelijk groet,
    Frank sijbom

    ps. Moeten nog meer methodes bij;)

    Bezig met cms:)

  • Stefan.J
    Master
    Ontvangen Reacties
    9
    Berichten
    2.358
    • 24 januari 2011 om 21:20
    • #5

    Jannick:

    Citaat

    return filter_var($email, FILTER_VALIDATE_EMAIL); aangezien deze functie al true of false retourneert is dit overbodig.


    Dit is niet helemaal waar, zie [func]filter_var[/func].

    @BrokenTrack:

    Citaat

    Naast dat mijn eigen voorkeur uit gaat naar een regex... is zoals gezegd is dit niet OOP.

    Sterker nog, het is een mislukte poging. Je maakt namelijk geen klasse aan voor maar één methode.


    Een reguliere expressie is waarschijnlijk langzamer. Reguliere expressies zijn langzaam van zichzelf, en een functionaliteit die al in PHP ingebouwd is zou sneller moeten zijn.

    Daarnaast is het niet waar dat een class met slechts één method niet mogelijk is. Er zijn best situaties denkbaar waarin een class maar één method heeft, maar in dit geval is het inderdaad niet correct.

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!

Maak een account aan Login

ICT Nieuws

  • Fijne feestdagen

    tcbhome 28 december 2025 om 13:55
  • Kritieke update voor Really Simple Security-plug-in

    K.Rens 16 november 2024 om 16:12
  • ING Nederland streeft naar ondersteuning van Google Pay tegen eind februari

    K.Rens 2 november 2024 om 16:09

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37

Gebruikers die dit topic bekijken

  • 1 Gasten
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design