Avatar billede rask2 Nybegynder
17. april 2009 - 20:51 Der er 42 kommentarer og
1 løsning

MD5 på karakterende ÆØÅ fejler.....

Hej eksperter

Jeg har oprettet en database med phpMyAdmin via one.com.

Når jeg logger ind er flg. tegnsæt valgt: Danish(utf-8)

På startsiden forefindes forskelligt info og nogle ting kan vælges, bl.a. MySQL forbindelses-sammenkøring som jeg har valgt til: utf8_unicode_ci.

Desuden står MySQL Tegnsæt: UTF-8 Unicode (utf8)

Jeg har herefter oprettet en tabel med to rækker: brugernavn og adgangskode. På adgangskoden anvendes MD5. Dette fejler dog når karaktererne ÆØÅ indgår. Kollation er valgt til utf8_unicode_ci for alle rækker.

Er der nogen kan kan fortælle mig hvad jeg gør forkert eller om ÆØÅ bare ikke understøttes i MD5 funktionen?????
Avatar billede rask2 Nybegynder
17. april 2009 - 20:52 #1
forresten er datatypen valgt til VARCHAR(32) for begge rækker...
Avatar billede webweaver Praktikant
18. april 2009 - 00:37 #2
Jo det skulle nok understøttes. Mener jeg bestemt at have brugt før. Prøv at kryptere det i dit script og derefter smide det ind i din DB.

$kodeord = "eksperten";

$kodeord_kryp = md5($kodeord);

INSERT INTO ....
Avatar billede CCodam Nybegynder
18. april 2009 - 00:47 #3
Kan du give et lille udsnit af koden, hvor du fanger den fra feltet brugeren har udfyldt, laver md5 hashen og indsætter den i SQL?
Avatar billede rask2 Nybegynder
23. maj 2009 - 11:52 #4
<?php
    //Delclare variables               
    $dbhost = "localhost";
    $dbuser = "*******";
    $dbpass = "*******";

    //Create connection to MySQL
    $con = mysql_connect($dbhost,$dbuser,$dbpass);
   
    //Evaluate if connection to database was established or not
    if (!$con)        
        die('Could not connect: ' . mysql_error());
    else
        echo "Connection established";
?>
<br/><br/>
<?php   
    // Get data from form
    $user = mysql_real_escape_string((get_magic_quotes_gpc() ? stripslashes($_POST["username"]) : $_POST["username"]));
    $password = md5($_POST["password"]);
   
    //select table
    mysql_select_db($dbuser, $con);

    //Search the database for a User with corresponding password
    $checkuser = mysql_query("SELECT * FROM Logins WHERE username='$user' AND Password = '$password'");
   
    //Get the number of matches......1 or 0 since username is primary key the value can't exceed 1
    $username_exist = mysql_num_rows($checkuser);

    if($username_exist > 0)
        echo "User info confirmed by administartor....";
   
    else
        echo "Username or password incorrect";   
    mysql_close($con);
?>
Avatar billede rask2 Nybegynder
23. maj 2009 - 12:01 #5
Jeg har prøvet at oprette en bruger med passwordet "ø". Der efter kan jeg jo se hvad passwordet er efter MD5 ->
837d4938ec1d5836484d61218c11c6fe

prøver jeg at gøre det samme via http://www.hjemmesideskolen.dk/scripts/phppass/kryptering.php

skulle det krypterede password være: 31741635b41d535098241fea03c1e47f
Avatar billede arne_v Ekspert
25. maj 2009 - 14:13 #6
Begge er rigtige.

837d4938ec1d5836484d61218c11c6fe erkorrekt med UTF-8 encoding.

31741635b41d535098241fea03c1e47f  er korrekt med ISO-8859-1 encoding.

:-)
Avatar billede rask2 Nybegynder
26. maj 2009 - 17:57 #7
Hmm

Hvad gør jeg så lige? Kan jeg ikke anvende UTF-8 encodning i min database så ???
Avatar billede webweaver Praktikant
28. maj 2009 - 19:39 #8
Jo, det kan du stille dine felter til inde i PhpMyAdmin. Kollation som det hedder. (Collation).

Undskyld mit fravær i tråden/trådene.
Er lige kommet tilbage til DK udenlands-fra i dag.
Avatar billede rask2 Nybegynder
28. maj 2009 - 22:43 #9
Hejsa

Det er helt i orden

Indstillingerne er som følger:

MySQL Tegnsæt: UTF-8 Unicode (utf8)
MySQL forbindelses-sammenkøring: utf8_danish_ci

I min tabel er kollationen i alle rækker sat til utf8_danish_ci.

Alle mine filer er lavet vha notepad++ hvor encoding er sat til utf8.

Er det lige meget om mine data er indtastet direkte via PhpMyAdmin?



Lige et ekstra spørgsmål ang. sessions. Jeg laver en session_start() i starten af mit script før html tags. Efter verifikation af brugeren bruger jeg flg kode:

$_SESSION['loggedin'] = true;    // store the user in the session
       
echo "User has been verified by administrator....";
       
echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"2; URL=$page\">";

Hvor jeg altså redirector til en anden side.

På denne side laver jeg et tjek på flg måde:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>PHP Test</title>
</head>
<body>
<?php

if($_SESSION['loggedin'] == true)
{
  echo 't';
}
else
{
  echo 'f';
}
?>
</body>
</html>

Dette resulterer altid i at f skrives ud på skærmen, hvilket jeg ikke helt forstår..... Kan du evt give mig et skub i den rigtig retning?
Avatar billede webweaver Praktikant
29. maj 2009 - 00:07 #10
Og du har session_start(); i begge dine filer, og ikke kun den ene?

Prøv med,

if (isset($_SESSION['loggedin'] == true)) {

eller evt.

if (isset($_SESSION['loggedin'])) {
Avatar billede rask2 Nybegynder
29. maj 2009 - 21:11 #11
Ja jeg har session_start() i begge filer. Du får lige begge filer med alt indhold:

Validation.php:
<?php
session_start();
?>

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
</head>

<body>
<?php
    //Delclare variables               
    $dbhost = "localhost";
    $dbuser = "*********";
    $dbpass = "*********";
   
    $page = "index.php";
   
    //Create connection to MySQL
    $con = mysql_connect($dbhost,$dbuser,$dbpass);
   
    //Evaluate if connection to database was established or not
    if (!$con)        
        die('Could not connect: ' . mysql_error());
    else
        echo "Connection established";
?>
    </br></br>
<?php   
    // Get data from form
    $user = mysql_real_escape_string((get_magic_quotes_gpc() ? stripslashes($_POST["username"]) : $_POST["username"]));
    $password = md5($_POST["password"]);
   
    //select table
    mysql_select_db($dbuser, $con);

    //Search the database for a User with corresponding password
    $checkuser = mysql_query("SELECT * FROM Logins WHERE username='$user' AND Password = '$password'");
   
    $username_exist = mysql_num_rows($checkuser);

    if($username_exist > 0)
    {
      $_SESSION['loggedin'] = true;    // store the user in the session
   
        echo "User has been verified by administrator....";
       
      echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"2; URL=$page\">"; 
    }
    else
        echo "Username or password incorrect";   
    mysql_close($con);
?>


</body>

</html>
Avatar billede rask2 Nybegynder
29. maj 2009 - 21:12 #12
Login filen:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>LOGIN</title>
</head>
<body>
<form action="validation.php" method="post">
    Username: <input type="text" name="username"/><br/><br/>
    Password: <input type="password" name="password"/><br/><br/>
    <input type="submit" value ="Login" />
</form>
</body>
</html>
Avatar billede rask2 Nybegynder
29. maj 2009 - 21:12 #13
og index filen jeg redirecter til:

<?php
session_start();
?>

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>PHP Test</title>
</head>
<body>

<?php
if (isset($_SESSION['loggedin'])) {
{
    echo 't';
}
else
{
    echo 'f';
}
?>
</body>
</html>
Avatar billede webweaver Praktikant
29. maj 2009 - 21:28 #14
Hmm prøv med fx,

$_SESSION['loggedin'] = 1;    // store the user in the session
Avatar billede rask2 Nybegynder
29. maj 2009 - 21:31 #15
Det gør ingen forskel....

og filer skal bare gemmes som .php ik?
Avatar billede rask2 Nybegynder
29. maj 2009 - 21:47 #16
Jeg har forsøgt uden at redirecte og derimod indsætte koden fra index.php direkte i validation filen, og så går det fint....
Avatar billede rask2 Nybegynder
29. maj 2009 - 22:13 #17
Efter jeg har sat $_SESSION['loggedin'] = 1 har jeg forsøgt flg:

echo "<pre>";
print_r($_SESSION);
echo "</pre>";

hvorefter flg som forventet skrives ud

Array
(
    [loggedin] => 1
)


Gør jeg det samme på index.php efter redirection skrives

Array
(
)

For mig at se beviser dette at det er redirectionen der er noget galt med. Er der noget der skal gøres for at jeg har session variable tilrådighed på andre sider?
Avatar billede rask2 Nybegynder
29. maj 2009 - 22:16 #18
Er det rigtigt redirecte på flg måde:
echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"2; URL=$page\">";
Avatar billede rask2 Nybegynder
29. maj 2009 - 22:45 #19
Jeg har forsøgt flg.

echo '<br /><a href="index.php?' . SID . '">Redirect</a>';

hvilket fungerer fint. Der sendes session iD med. Men det er jo manuelt hvilket ikke helt var det jeg søgte....
Avatar billede webweaver Praktikant
29. maj 2009 - 23:17 #20
Neej det er underligt.
Det skal ikke gøres manuelt. Det andet skulle sagtens være muligt. SESSIONS er jo netop til for at man kan fange dem på flere sider, uden man skal have variabler i URL eller noget.

Det kan være der sker en fejl i din redirect.
Du har den nede i dit body-element, hvilket er forkert. Den skal være i din header.

Din struktur i koden er forkert. Du bliver nødt til at rykke det op i headersektionen. Hvis du rykker din PHP op imellem <head></head> og så laver  echo "User has been verified by administrator...."; om til $message = "User has been verified by administrator...."; og echo "Username or password incorrect";  om til $message = "Username or password incorrect"; og echo'er den nede i dit body-element istedet, hvordan går det så?

Altså bare med echo $message;

Håber ïndlægget var forståeligt. Hehe.. Ellers må jeg prøve at vise det bedre :)
Avatar billede rask2 Nybegynder
30. maj 2009 - 15:33 #21
Jeg har prøvet at lave det om som du beskriver og det giver det samme...


<?php
session_start();
?>

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

<?php

//Delclare variables               
$dbhost = "localhost";
$dbuser = "'''''''";
$dbpass = "'''''''";
   
$page = "index.php";
   
//Create connection to MySQL
$con = mysql_connect($dbhost,$dbuser,$dbpass);
   
//Evaluate if connection to database was established or not
if (!$con)        
    die('Could not connect: ' . mysql_error());
else
    echo "Connection established";
   
// Get data from form
$user = mysql_real_escape_string((get_magic_quotes_gpc() ? stripslashes($_POST["username"]) : $_POST["username"]));

$password = md5($_POST["password"]);
   
//select table
mysql_select_db($dbuser, $con);

//Search the database for a User with corresponding password
$checkuser = mysql_query("SELECT * FROM Logins WHERE username='$user' AND Password = '$password'");
   
$username_exist = mysql_num_rows($checkuser);

if($username_exist > 0)
{
    $_SESSION['loggedin'] = 1;    // store the user in the session
       
    $message = "User has been verified by administrator....";
               
    echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"1; URL=$page\">"; 
}
else
    $message = "Username or password incorrect";   
    mysql_close($con);
?>

</head>

<body>

<?php
echo $message;
?>

</body>

</html>


Jeg er lidt i tvivl ang strukturen på siden. Har du nogle links til hvordan man bør bygge det op?? Jeg bruger selv mest http://www.php.net/ til inspiration

Og hvordan afvikles koden? Jeg er mest vant til C++ hvor man kan sige at koden afvikles oppe fra og ned, og derfor gav for mig ikke så meget mening at bruge "echo" efter man har redirectet:-)
Avatar billede webweaver Praktikant
31. maj 2009 - 01:40 #22
Jeg har umiddelbart ingen links til det nej.

Så skal jeg poste dig en udsnit af hvordan jeg selv plejer at gøre.

Det er lidt forskelligt hvad man kan gøre, men den måde du gør det på her, er egentligt fin nok. Normalt når jeg selv laver sådan noget, så laver jeg validering i login filen. Altså det hele i 1 fil, istedet for den sender dig til en anden fil, for at sende dig videre til en tredie. Men det er jo en smagssag.

Koden afvikles på samme måde som C++ og det meste andet. Det læses også oppe fra som en bog. Og afvikles i den rækkefølge.

Du kan sagtens have en echo længere nede. Hvis den nu ikke sender dig videre (hvis login er forkert fx), så skal den jo skrive noget dernede. Og, hvis du bliver redirectet, så tager det jo lige lidt tid, så den skriver en besked om at det er i orden.

Men vi er enige om når du logger ind, at hvis det korrekt login, så skriver den User has been verified by administrator... og redirecter dig kort efter ikke? Og hvis login er forkert, skriver den Username or password incorrect?

Jeg er sgu i tvivl her. Kan ikke se hvor fejlen ligger.
Ved ikke om jeg har stirret mig blind på det eller hvad efterhånden, så må lægge mit hovede i blød.

Hvis du prøver at fjerne dit metatag der videresender en gang, og skriver echo $_SESSION['loggedin']; nede under echo $message;, kan den så vise SESSIONEN på den side? Bare for at teste en gang.. Ellers kunne det godt tyde på, at den slet ikke bliver sat.
Avatar billede rask2 Nybegynder
31. maj 2009 - 08:33 #23
Til dit spørgsmål:
"......Men vi er enige om når du logger ind, at hvis det korrekt login, så skriver den User has been verified by administrator... og redirecter dig kort efter ikke? Og hvis login er forkert, skriver den Username or password incorrect?....."

Ja det er korrekt.

Og ved echo $_SESSION['loggedin']; unde echo $message; udskrives 1... hvilket jo er korrekt.....
Avatar billede rask2 Nybegynder
31. maj 2009 - 08:57 #24
Jeg har kogt det lidt ned så jeg kun redirecter og skriver lidt debug information ud på valideringssiden:

<?php
session_start();
?>

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

<?php
$page = "index1.php";

$_SESSION['loggedin'] = 1;    // store the user in the session
               
echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"1; URL=$page\">"; 
?>

</head>

<body>
<?php
echo $_SESSION['loggedin'];
?>

</body>
</html>

Og resultatet er nøjagtig det samme. På valideringssiden giver

echo $_SESSION['loggedin']; ---> 1

og på login siden giver:

echo "<pre>";
print_r($_SESSION);
echo "</pre>";

if( isset($_SESSION['loggedin']) ) 
{
  echo 't';
}
else
{
  echo 'f';
}

Array
(
)

f
Avatar billede rask2 Nybegynder
31. maj 2009 - 08:59 #25
og

echo "<pre>";
print_r($_SESSION);
echo "</pre>";

på validerings siden giver

Array
(
    [loggedin] => 1
)
Avatar billede webweaver Praktikant
31. maj 2009 - 10:41 #26
Okay, så problemerne ligger ikke med at oprette SESSIONEN. Den eksisterer. Well, du skriver at den ikke kan vise den på login siden. Altså den side med formen? For der ser det ikke ud til at du har en session_start();. Prøv at smide en ind der.

Du skriver også,

if( isset($_SESSION['loggedin']) ) 
{
  echo 't';
}
else
{
  echo 'f';

Der er et mellemrum mellem paranteresen og isset. Og igen til sidst i sætningen. Prøv at fjerne det. Tvivler dog på at det skulle være problemet.

if(isset($_SESSION['loggedin'])) 
{
  echo 't';
}
else
{
  echo 'f';
Avatar billede rask2 Nybegynder
31. maj 2009 - 22:10 #27
doh det må du undskylde. jeg mente ikke login siden men den siden der viderestilles efter korrekt login....det er min fejl.

Ang. mellemrummene er giver det ikke nogen forskel....

Kan det stamme fra min Login.php?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<?php
session_start();
?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>LOGIN</title>
</head>
<body>
<form action="validation1.php" method="post">
    Username: <input type="text" name="username"/><br/><br/>
    Password: <input type="password" name="password"/><br/><br/>
    <input type="submit" value ="Login" />
</form>
</body>
</html>
Avatar billede rask2 Nybegynder
31. maj 2009 - 22:35 #28
Jeg synes virkelig det er underligt for når jeg søger på nettet er det nøjagtig lige sådan jeg gør. Kan jeg mangle noget opsætning eller noget, eller kan det være encodningen eller måden jeg gemmer på??? bruger www.one.com som webhotel.....

Det synes jeg jo umiddelbart ikke kan have noget med det at gøre.
Avatar billede rask2 Nybegynder
31. maj 2009 - 22:47 #29
Nu kan det godt være jeg spørger dumt:-)

Skal jeg have en php.ini fil??
Avatar billede rask2 Nybegynder
31. maj 2009 - 22:57 #30
Hvordan bør jeg indstille følgende:

Register globals: "ON" "OFF"?

Default står den til OFF i mit kontrolpanel på one.com
Avatar billede webweaver Praktikant
01. juni 2009 - 10:52 #31
Du har allerede en php.ini fil. Men den behøver du ikke rode i.
Lad RG (Register Globals) være til off. Det bør den altid være, da det er et sikkershedsmodul. At sætte den til on svækker nogle ting væsentligt. Du kan sagtens lave det du ønsker med den til off.

Måden du gemmer på er også fin. Og encoding'en skulle ikke have noget at sige nej.

Prøv at skifte

<form action="validation1.php" method="post">

ud med

<form method="post" action="validation1.php">

Men tvivler nu også på at det har noget at sige.
Det begynder at blive svært, så nu er det bare lidt skud i tågen, udfra hvad jeg plejer at gøre anderledes.

Du kan også prøve at smide ob_end_flush(); op under din session_start;, men kan ikke helt huske hvordan den funktion virker, så det kan være der skal mere til end det.

Det kan være nogle andre ved mere omkring dette, som vil joine os i tråden her. :)
Avatar billede rask2 Nybegynder
02. juni 2009 - 17:24 #32
Jeg har forsøgt at ændre de ting du har foreslået....uden held.

Det er godt nok underligt....
Avatar billede rask2 Nybegynder
02. juni 2009 - 17:46 #33
Det er ikke noget med den måde der redirectes på, hvor session variable ikke overføres?
Avatar billede webweaver Praktikant
02. juni 2009 - 17:47 #34
Det var da lige godt  .. ihhh..

Jeg tror vi er på et stadie nu, hvor du må prøve at oprette 2 nye filer. 1 hvor du bare gemmer en SESSION. Og 1 hvor du udskriver den. Virker det overhovedet? Bare som en test.
Avatar billede webweaver Praktikant
02. juni 2009 - 19:00 #35
Det tror jeg ikke. SESSION bliver jo sat, før der redirectes.
Prøv at fjern din redirect. Og så klik dig manuelt ind på den side som den burde have redirectet til, og så se om det virker :)
Avatar billede rask2 Nybegynder
02. juni 2009 - 20:23 #36
Jeg har prøvet at gøre det manuelt ved:

echo '<br /><a href="index1.php">Redirect</a>';

og det virker heller ikke så det er nok ikke redirect linjen der fejler.....men nok i den fil der redirectes til.....eller?
Avatar billede rask2 Nybegynder
02. juni 2009 - 21:07 #37
Jeg har forsøgt at sætte variablen i en fil og skrive den ud i den anden. De to filer ser således ud:

Først sætter vi variablen.....

<?php
session_start();
?>

<html>

<body>
    <?php
    $_SESSION['loggedin'] = 1;    // store the user in the session
    ?>
    <a href="testCheck.php">Redirect</a>
</body>

</html>


efter redirect tjekker vi den samme variabel...

<?php
session_start();
?>

<html>
<head>
 
    <?php

    if(isset($_SESSION['loggedin'])) 
    {
        echo 't';
    }
    else
    {
        echo 'f';
    }
    ?>

</head>
<body>

    <?php
    if(isset($_SESSION['loggedin'])) 
    {
        echo 't';
    }
    else
    {
        echo 'f';
    }
    ?>

</body>
</html>


Jeg har forsøgt at tjekke både i <head> og i <body>, men det er ligesom det har været hele tiden.....:-)
Avatar billede rask2 Nybegynder
03. juni 2009 - 20:49 #38
Kan det være noget med opsætningen af min browser eller noget????
Avatar billede rask2 Nybegynder
09. juni 2009 - 19:15 #39
Jeg tror vist ikke der er nogen der joiner os....
Avatar billede rask2 Nybegynder
18. juni 2009 - 21:08 #40
he he nu har jeg sgu løst det....

jeg har søgt lidt rundt på nettet efter jeg næsten havde opgivet og se hvad jeg fandt her på eksperten.....

http://www.eksperten.dk/spm/877192

Den store synder er BOM der var enabled i min editor.....

Nu kører det bare. Jeg anede ikke der var noget der hed BOM.

Men mange tak for hjælpen, og du får naturligvis pointene...

Smider du et svar.

Forresten nogle rigtig nice hjemmesider du har fået lavet.

Hvordan er laver du dine menu´er: fx a la den du har på http://www.webweaver.dk/
Avatar billede webweaver Praktikant
19. juni 2009 - 22:01 #41
Der kan man bare se. Men fantastisk at du endelig fik det til at virke! :D Så er alt jo godt. smiler

Og mange tak! Det er naturligvis super fedt at få afvide :)
Menuen på Webweaver.dk er faktisk forholdsvis simpel :)

En standard tabel i dette tilfælde,

<table>
<tr>

<td bgcolor="#E8DCBA" nmouseover="this.style.backgroundColor='#F2ECD9';" onmouseout="this.style.backgroundColor='#E8DCBA';">
           
<a class="menu_link" href="http://www.webweaver.dk/guestbook.php">Gæstebog</a>

</td>

</tr>

</table>
Avatar billede rask2 Nybegynder
20. juni 2009 - 18:55 #42
Jeg tænkte mest på de afrundede hjørner...

Er det bare billeder eller?
Avatar billede webweaver Praktikant
20. juni 2009 - 20:40 #43
Yeah, det er et baggrundsbillede jeg har sat ind i en <td>.
Dejlig nem måde at gøre det på i virkeligheden.
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
Computerworld tilbyder specialiserede kurser i database-management

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