Jeg har lavet et lille eksempel:
<?php
$kodeord = "1234";
echo md5(1234)
?>
<br/>
<?php
echo md5($kordeord)
?>
Det skulle efter min mening gerne give to ens kodeord, men jeg får to forskellige, se evt.
http://emilchristiansen.dk/test.phpJeg tror måske at det er det der er galt - at koden til at oprette bruger og koden til check login giver to forskellige kodeord.
Koden til create.php ser sådan ud:
<?
if ($_POST['bruger'] == "" AND $_POST['pass'] == "") {
print(" <script language='javascript'>
location.href='opret.php?fejl=1';
</script>");
}
elseif ($_POST['bruger'] == "") {
print(" <script language='javascript'>
location.href='opret.php?fejl=2';
</script>");
}
elseif ($_POST['pass'] == "") {
print(" <script language='javascript'>
location.href='opret.php?fejl=3';
</script>");
}
else
{
$bruger = $_POST['bruger'];
$pass = $_POST['pass'];
$pass_kryp = md5($_POST['password']);
$login = "login";
mysql_connect("$server", "$user", "$password");
mysql_select_db("$database");
$query = "SELECT id, brugernavn, kodeord FROM brugere WHERE brugernavn = '".$bruger."'";
$result = mysql_query($query)or die("MySQL fejl: " . mysql_error());
$test = mysql_fetch_array($result);
if (isset($test['brugernavn'])) {
print(" <font face='verdana' size='2' color='#ff0000'>
<br><b>Brugernavnet \"$bruger\" er allerede optaget
vælg venligst et andet.</b></font><br><br>
<font face='verdana' size='2' color='#000000' text-decoration='none'>
<a href='opret.php'>Tilbage</a></font>");
}
else
{
$sql = "INSERT INTO brugere (id, brugernavn, kodeord) VALUES ('', '$bruger', '$pass_kryp')";
mysql_query($sql);
print(" <font face='verdana' size='2' color='#669900'>
<b>Bruger: $bruger <br>
Password: $pass <br>
Er nu oprettet </b></font><br>
<font face='verdana' size='2' color='#000000' text-decoration='none'>
<a href='login.php'>Login</a></font>");
}
}
?>
Kan i gennemskue hvad der er galt?