Avatar billede kellesen Nybegynder
12. juni 2007 - 14:59 Der er 10 kommentarer og
2 løsninger

validering af email

Hey..
Har følgende script.. Kan i hjælpe med en validering af email adr.
Takker...

________________________________________________-
<?php
ob_start();
if($_POST['nyhedsbrev']) { // hvis man har trykket "submit"
    mysql_connect("localhost", "") or die(mysql_error());
    mysql_select_db(""); // connection til databasen

    if($_POST['tilmelding'] && $_POST['email']) { // hvis man har udfyldt radio og email feltet.
        if ($_POST['tilmelding'] == "ja") {
            $tjek_email = mysql_query("SELECT * FROM nyhedsbrev WHERE email = '$_POST[email]'");
            $tael_email = mysql_num_rows($tjek_email);
            if ($tael_email == 1) {
            header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=findes");exit;
            }
            else {
                mysql_query("INSERT INTO nyhedsbrev (email) VALUES ('$_POST[email]')");
                header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=ok");exit;
            }
        }
        elseif($_POST['tilmelding'] == "nej") {
            mysql_query("DELETE FROM nyhedsbrev WHERE email = '$_POST[email]'");
            header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=slettet");exit;
        }
    }
    else{header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=fejl");exit;}
}
ob_end_flush()
?>
Avatar billede masik7 Nybegynder
12. juni 2007 - 15:11 #1
Noget i retning af:
if (!preg_match("/^([^@]+)@(.+)$/", $_POST["email"])) {
//fejl her
else {
//videre..
Avatar billede kellesen Nybegynder
12. juni 2007 - 15:34 #2
gider du ikke prøve at give mig det færdige script?
Avatar billede masik7 Nybegynder
12. juni 2007 - 16:11 #3
Noget i retning af:
<?php
ob_start();
if($_POST['nyhedsbrev']) { // hvis man har trykket "submit"
    mysql_connect("localhost", "") or die(mysql_error());
    mysql_select_db(""); // connection til databasen

    if($_POST['tilmelding'] && $_POST['email'] && preg_match("/^([^@]+)@(.+)$/", $_POST["email"])) { // hvis man har udfyldt radio og email feltet.
        if ($_POST['tilmelding'] == "ja") {
            $tjek_email = mysql_query("SELECT * FROM nyhedsbrev WHERE email = '$_POST[email]'");
            $tael_email = mysql_num_rows($tjek_email);
            if ($tael_email == 1) {
            header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=findes");exit;
            }
            else {
                mysql_query("INSERT INTO nyhedsbrev (email) VALUES ('$_POST[email]')");
                header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=ok");exit;
            }
        }
        elseif($_POST['tilmelding'] == "nej") {
            mysql_query("DELETE FROM nyhedsbrev WHERE email = '$_POST[email]'");
            header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=slettet");exit;
        }
    }
    else{header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=fejl");exit;}
}
ob_end_flush()
?>
Avatar billede coderdk Praktikant
12. juni 2007 - 23:43 #4
Denne har jeg brugt et par steder:

    function isValidEmail($address) 
    { 
        $address = trim($address);
        list(,$host) = explode('@',$address);
        if (!preg_match('/^[-!#$%&\'*+\\.\/0-9=?A-Z^_`{|}~]+' . // username
            '@' .                                  // 'at'
            '([-0-9A-Z]+\.)+' .                    // domain name(s)
            '([0-9A-Z]){1,6}\.?$/i',                // tld
            $address)) 
        {
            // Return true if it's an IP
            return preg_match( "/^\[(\d{1,3}\.){3}\d{1,3}\]$/", $host );
        }
        $host .= '.'; // DNS style address
        return (getmxrr($host,$mxrecords) || checkdnsrr($host,'ANY'));
    }
Avatar billede kellesen Nybegynder
19. august 2007 - 15:18 #5
tak - smid et svar :)
Avatar billede coderdk Praktikant
19. august 2007 - 15:25 #6
(c:
Avatar billede masik7 Nybegynder
19. august 2007 - 17:43 #7
Hvem af os skal have?
Avatar billede kellesen Nybegynder
20. august 2007 - 15:12 #8
lang tid siden.. kan ikke huske hvad jeg brugte..
Avatar billede nickern Nybegynder
20. august 2007 - 15:14 #9
Jeg vil da sige at coderdks er meget længere end den jeg normalt bruger til at validere min med, om det er en fordel eller ej, skal jeg ikke kunne sige :)
Avatar billede masik7 Nybegynder
20. august 2007 - 15:27 #10
Nå, okay. Skal vi så bare have nogle point begge to, eller?
Avatar billede kellesen Nybegynder
20. august 2007 - 15:38 #11
ja - lyder fint..
Avatar billede masik7 Nybegynder
20. august 2007 - 15:48 #12
Okay (:
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester