Använd MD5() istället för PASSWORD(). PASSWORD() krypterar bara en väg, det finns alltså inget sätt att få veta vad hieroglyferna betyder.
Om du använder MD5() kan du skriva såhär:
$mypassword = md5($mypassword);
5 svar · 375 visningar · startad av Ella
Har en inloggningssida med input type password. Har även satt "password" som function i mySQL. Min fråga är hur jag bakar in det i min kod så att det fungerar korrekt?
<?php
$host="localhost";
$username="***";
$password="***";
$db_name="***";
$tbl_name="members";
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count==1){
session_register("myusername");
session_register("mypassword");
header("location:sida3.php");
}
else {
echo "Fel Användarnamn eller Lösenord";
}
?>
Använd MD5() istället för PASSWORD(). PASSWORD() krypterar bara en väg, det finns alltså inget sätt att få veta vad hieroglyferna betyder.
Om du använder MD5() kan du skriva såhär:
$mypassword = md5($mypassword);
md5() är också envägskryptering.
Hmm...så här? (ändrat till md5 i mySQL också)
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];
$myusername = stripslashes($myusername);
$mypassword = md5($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);
Får inte det att fungera. :(
Ska jag ha med md5 i $sql? Liknande det här?
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password=md5('$mypassword')";
$mypassword = md5($mypassword); räcker. Men du måste göra det vid registrering när lösenordet sparas också.
I databasen ska det vara en vanlig varchar.
Underbart! Bockar och bugar... :)