Avatar billede superdreng Nybegynder
09. oktober 2005 - 20:41 Der er 9 kommentarer og
1 løsning

Hjælp til Community

Hej Experter

Jeg har et Community hvor brugerne kan oprette sig, men jeg har de problem at nogen bare laver mellemrum i brugernavnet. Kan i hjælpe?

Her er koden på creater:
<title>Opret Bruger...</title>
<link rel="stylesheet" type="text/css" href="../style.css">
<?

$bruger = $_POST['bruger'];
$pass = $_POST['pass'];
$email = $_POST['email'];
$alder = $_POST['alder'];
$bopael = $_POST['bopael'];
$tlf = $_POST['tlf'];
$ip = $_SERVER['REMOTE_ADDR'];


if ($bruger == "" AND $pass == "" AND $email == "") {
        print("    <script language='javascript'>
        location.href='create.html';
        </script>");
}


if ($bruger == "" AND $pass == "") {
        print("    <script language='javascript'>
        location.href='create.html';
        </script>");
}

if ($bruger == "") {
        print("    <script language='javascript'>
        location.href='create.html';
        </script>");
}

if ($pass == "") {
        print("    <script language='javascript'>
        location.href='create.html';
        </script>");
}

if ($email == "") {
        print("    <script language='javascript'>
        location.href='create.html';
        </script>");
}



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 (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.htm'>Tilbage</a></font>");
}
else
{
$sql = "INSERT INTO login (id, user, pass, email, alder, bopael, tlf, tid, ip) VALUES ('', '$bruger', '$pass', '$email', '$alder', '$bopael', '$tlf', now(), '$ip')";
mysql_query($sql);
print("    <font face='verdana' size='2' color='#669900'>
        Bruger: $bruger <br>
        Password: $pass <br>
        Er nu oprettet </font><br>
        <font face='verdana' size='2' color='#000000' text-decoration='none'>
        </font>");
        }
?>
Avatar billede jakobdo Ekspert
09. oktober 2005 - 20:46 #1
Prøv at ret:
$bruger = $_POST['bruger'];
$pass = $_POST['pass'];

til:
$bruger = trim($_POST['bruger']);
$pass = trim($_POST['pass']);

Og læs mere om trim på: www.php.net/trim

Kort fortalt, den fjerner SPACES, NEWLINES, TABS og lign... (i start eller slut)
Avatar billede superdreng Nybegynder
09. oktober 2005 - 20:54 #2
Det var nu ikke lige det jeg mente men ellers godt svar.

Det er at nogen ikke skriver andet en mellemrum men der må godt være mellemrum når der er text.
Avatar billede jakobdo Ekspert
09. oktober 2005 - 21:25 #3
Hvis nogen skriver en masse mellemrum, så er din test ikke lige med "", trim'er du testen, vil stregen: "        " blive lige med: ""
strengen: " test " vil blive lige med: "test"
Ergo er det trim du skal bruge!

Ellers skal du lave en regexp, som tjekker om brugernavn indeholder bogstaver.
Avatar billede superdreng Nybegynder
10. oktober 2005 - 16:54 #4
ok men hvordan laver man en regexp?
Avatar billede jakobdo Ekspert
10. oktober 2005 - 17:30 #5
Det kommer an på hvad du vil godtage som input til brugernavn og kodeord.
Du kan evt prøve at smide dit ønske herind.
Eller selv tage et kig på det via programmet: regexbuddy (www.regexbuddy.com)
Avatar billede superdreng Nybegynder
10. oktober 2005 - 21:47 #6
Det er meget nemt.
Det skal indholde mindst 1 bogstav.
eks "hans styrer" eller det er fint nok men
" " eller "  " duer ikke eller med mærkelige tegn!

Er det for meget at spørge om? :-@
Avatar billede jakobdo Ekspert
10. oktober 2005 - 21:54 #7
Du kan bruge denne:
if (preg_match('/[a-zæøå]/i', $tekst))
{
echo $tekst . " indeholder minimum et bogstav";
}
Avatar billede superdreng Nybegynder
05. januar 2007 - 18:36 #8
Mange tak for svarene, smid et svar hvis i vil have pointene?
Avatar billede jakobdo Ekspert
05. januar 2007 - 18:43 #9
Point, altid...
Avatar billede jakobdo Ekspert
28. januar 2007 - 13:11 #10
Takker for point.
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

IT-JOB