/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Email login check
Fra : Anders Jensen


Dato : 10-06-04 09:38

Jeg vil gerne have at den chekker om man skriver en email
valideret med: x@x.dk
OGSÅ SOM IF I PHP

DETTE VIRKER IKKE :

if ( ereg("^[^@ ]+@[^@ ]+\.[^@ \.]+$", $email)) {
die("Din email skal være x@x.tld");
}

HELE MIN PHP FIL TIL DET SER SÅLEDES UD!


<title>Opret Bruger...</title>
<?

$bruger = $_POST['bruger'];
$pass = $_POST['pass'];
$email = $_POST ['mail'];
$postnr = $_POST ['post'];
$telefon = $_POST ['tele'];
$accept = $_POST ['accept'];

include("access.php");
$query = "SELECT id, user, pass FROM login WHERE user =
'".$bruger."'";
$result = mysql_query($query)or die("MySQL fejl: " .
mysql_error());
$test = mysql_fetch_array($result);

if (!$_POST["bruger"] | !$_POST['pass'] | !$_POST['passa'] |
!$_POST['mail'] | !$_POST['post']){
echo "<script
type=\"text/javascript\">alert(\"Alle felter med * SKAL
udfyldes!!!\");history.go(-1)</script>";
}

if (@$_POST['pass'] != @$_POST['passa']){
echo "<script type=\"text/javascript\">alert(\"Koderne er ikke
identiske\");history.go(-1)</script>";
}
if (strlen($_POST ['post']) != 4) {
echo "<script type=\"text/javascript\">alert(\"Indtast
venligst et GYLDIGT postnr.!!!\");history.go(-1)</script>";
}

if (isset($test['user'])) {
print(" <font face='verdana' size='2' color='#ff0000'>
<b>Brugernavnet \"$bruger\" er allerede optaget
vælg venligst et nyt </b></font><br>
<font face='verdana' size='2' color='#000000'
text-decoration='none'>
<a href='create.html'>Tilbage</a></font>");
}
else
{
$sql = "INSERT INTO login (id, user, pass, email, postnr,
telefon) VALUES ('', '$bruger', '$pass', '$mail', '$post',
'$tele')";
mysql_query($sql);
echo "<script type=\"text/javascript\">alert(\"Kodeordet og de
andre oplysninger vil nu blive vist!!!\")</script>";
print(" <font face='verdana' size='2' color='#669900'>
<b> Bruger: $bruger <br>
Password: $pass <br>
Email: $email <br>
Postnummer: $postnr <br>
Telefonnummer: $telefon <br>
Er nu oprettet </b></font><br>
<font face='verdana' size='2' color='#000000'
text-decoration='none'>
<a href='login.php'>Login</a></font>");
}
?>

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
MipZhaP (10-06-2004)
Kommentar
Fra : MipZhaP


Dato : 10-06-04 18:27

Jeg ville lave din ereg lidt om :)

if(!eregi("^[a-z0-9]*@([a-z0-9]*)(\.[a-z]{2,3})$", $email) {
die("Din email skal være name@domain.suffix");
}

Den burde kunne klare det? :)
Skal jeg være ærlig, kan jeg ikke se hvad din ereg sætning,
skulle gøre.. :) Hvad du vil med 4 @'er i en e-mail :)

Mvh Marc Poulsen

> Jeg vil gerne have at den chekker om man skriver en email
> valideret med: x@x.dk
> OGSÅ SOM IF I PHP
>
> DETTE VIRKER IKKE :
>
> if ( ereg("^[^@ ]+@[^@ ]+\.[^@ \.]+$", $email)) {
> die("Din email skal være x@x.tld");
> }
>
> HELE MIN PHP FIL TIL DET SER SÅLEDES UD!
>
>
> <title>Opret Bruger...</title>
> <?
&gt;
&gt; $bruger = $_POST['bruger'];
&gt; $pass = $_POST['pass'];
&gt; $email = $_POST ['mail'];
&gt; $postnr = $_POST ['post'];
&gt; $telefon = $_POST ['tele'];
&gt; $accept = $_POST ['accept'];
&gt;
&gt; include("access.php");
&gt; $query = "SELECT id, user, pass FROM login WHERE user =
&gt; '".$bruger."'";
&gt; $result = mysql_query($query)or die("MySQL fejl: " .
&gt; mysql_error());
&gt; $test = mysql_fetch_array($result);
&gt;
&gt; if (!$_POST["bruger"] !$_POST['pass'] !$_POST['passa']
&gt; !$_POST['mail'] !$_POST['post']){
&gt; echo "<script
&gt; type=\"text/javascript\">alert(\"Alle felter med * SKAL
> udfyldes!!!\");history.go(-1)</script>";
> }
>
> if (@$_POST['pass'] != @$_POST['passa']){
> echo "<script type=\"text/javascript\">alert(\"Koderne er ikke
&gt; identiske\");history.go(-1)</script>";
> }
> if (strlen($_POST ['post']) != 4) {
> echo "<script type=\"text/javascript\">alert(\"Indtast
&gt; venligst et GYLDIGT postnr.!!!\");history.go(-1)</script>";
> }
>
> if (isset($test['user'])) {
> print(" <font face='verdana' size='2' color='#ff0000'>
> <b>Brugernavnet \"$bruger\" er allerede optaget
> vælg venligst et nyt </b></font><br>
> <font face='verdana' size='2' color='#000000'
&gt; text-decoration='none'>
> <a href='create.html'>Tilbage</a></font>");
> }
> else
> {
> $sql = "INSERT INTO login (id, user, pass, email, postnr,
> telefon) VALUES ('', '$bruger', '$pass', '$mail', '$post',
> '$tele')";
> mysql_query($sql);
> echo "<script type=\"text/javascript\">alert(\"Kodeordet og de
&gt; andre oplysninger vil nu blive vist!!!\")</script>";
> print(" <font face='verdana' size='2' color='#669900'>
> <b> Bruger: $bruger <br>
> Password: $pass <br>
> Email: $email <br>
> Postnummer: $postnr <br>
> Telefonnummer: $telefon <br>
> Er nu oprettet </b></font><br>
> <font face='verdana' size='2' color='#000000'
&gt; text-decoration='none'>
> <a href='login.php'>Login</a></font>");
> }
> ?>
>
> --
> Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
> - Pædagogiske tutorials på dansk
> - Kom godt i gang med koderne
> KLIK HER! => http://www.html.dk/tutorials


--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jonas Koch Bentzen (10-06-2004)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 10-06-04 19:17

MipZhaP wrote:
>
> if(!eregi("^[a-z0-9]*@([a-z0-9]*)(\.[a-z]{2,3})$", $email) {

Understreg er tilladt foran snabel-a'et, men mangler i din regex.

"*" skal ændres til "+".

Hved med dem, der har TLD'er på mellem fire og seks bogstaver (.info,
..name, .museum)?

Og så er der efterhånden også nogle, der bruger emailadresser med
ikke-ASCII-tegn (f.eks. Æ, Ø, Å, kyrilliske bogstaver, kinesiske tegn
eller lignende). Det er langt fra alle mailprogrammer, der understøtter
den slags, men de findes altså.

Jeg ville bruge noget i retning af

if (preg_match('/\S+@\S+\.[a-zA-Z]{2,6}/', $tekst)) {
}

Den kan sagtens fange ugyldige emailadresser - men hovedsagen er sådan
set, at den i hvert fald ikke udelukker nogen (okay, den udelukker folk,
der bruger IP-adresser i stedet for domæner (nogen@127.0.0.1), men hvem
gør det?... I denne situation er det bedre at lade enkelte forkerte
emailadresser slippe forbi (de bliver alligevel fanget, hvis man bruger
aktivering af brugerkonto via email) frem for at fortælle en bruger med
en gyldig emailadresse, at hans/hendes emailadresse ikke er gyldig.

Jacob Atzen (10-06-2004)
Kommentar
Fra : Jacob Atzen


Dato : 10-06-04 19:24

MipZhaP <mipzhap@mipzhap.dk> writes:

> Jeg ville lave din ereg lidt om :)
>
> if(!eregi("^[a-z0-9]*@([a-z0-9]*)(\.[a-z]{2,3})$", $email) {
> die("Din email skal være name@domain.suffix");
> }

Må man ikke længere bruge underscore, bindestreg eller punktum i sin
email adresse?

--
Med venlig hilsen
- Jacob Atzen

Jeppe Uhd (11-06-2004)
Kommentar
Fra : Jeppe Uhd


Dato : 11-06-04 07:34

Jacob Atzen wrote:
> MipZhaP <mipzhap@mipzhap.dk> writes:
>
>> Jeg ville lave din ereg lidt om :)
>>
>> if(!eregi("^[a-z0-9]*@([a-z0-9]*)(\.[a-z]{2,3})$", $email) {
>> die("Din email skal være name@domain.suffix");
>> }
>
> Må man ikke længere bruge underscore, bindestreg eller punktum i sin
> email adresse?

Eller plus eller asterisk ?

--
MVH Jeppe Uhd - NX http://nx.dk
Webhosting for nørder og andet godtfolk



MipZhaP (11-06-2004)
Kommentar
Fra : MipZhaP


Dato : 11-06-04 11:03

Jacob Atzen wrote in dk.edb.internet.webdesign.serverside.php:
> MipZhaP <mipzhap@mipzhap.dk> writes:
>
> > Jeg ville lave din ereg lidt om :)
> >
> > if(!eregi("^[a-z0-9]*@([a-z0-9]*)(\.[a-z]{2,3})$", $email) {
> > die("Din email skal være name@domain.suffix");
> > }
>
> Må man ikke længere bruge underscore, bindestreg eller punktum i sin
> email adresse?
>
> --
> Med venlig hilsen
> - Jacob Atzen


Siden at i ser på højt på underscore, bindestreg eller punktum.
Jeg tog det ikke relevant da han bad om e-mailen: x@x.tld, kan nogen af
jer fortælle mig hvor der er en underscore, bindestreg eller et punktum
udover mellem domain og suffix om jeg må spørge? :)
I behøver ikke peppe op, bare fordi at jeg skrev hvad han bad om..

Mvh Marc Poulsen.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste