Sida 1 av 1
krypterinsproblem
Postat: 2013-10-01 18:12
av nit
Kod: Markera allt
<?php
include('connectDb.php');
$code = $conn->real_escape_string(hash('SHA1',$_POST['code']));
$result = $conn->query("SELECT prs FROM login WHERE prs = '".$code."'")
or trigger_error($conn->error);
if($result->num_rows < 1){
echo 'wrong ';
}else{
echo 'right ';
}
jag kan inte få det rätt. Min databas är krypterad med SHA1 funktionen.
$code trimmat med jquery
som i sin tur skickas genom ajax
Re: krypterinsproblem
Postat: 2013-10-02 00:37
av Marcus
Kontrollera att du sparar hela hashen i databasen.
Så du t.ex. inte har satt utrymmet i kolumnen prs till färre tecken än vad hashen genererar.
Testa om det inte är hårt krav på hur din algoritm anges, dvs. att den ska anges som 'sha1' och inte alls tar 'SHA1'.
Re: krypterinsproblem
Postat: 2013-10-02 11:50
av nit
Det har jag redan gjort. Jag har t.o.m provat md5 men tydligen så är inte phps md5 likadant som mysql md5 (ger inte samma resultat). Jag har ingen varför det inte fungerar!
Re: krypterinsproblem
Postat: 2013-10-02 13:07
av Marcus
Kan vara ett encoding problem. Vad har du för encoding på databas respektive php-filen? UTF8
Re: krypterinsproblem
Postat: 2013-10-02 15:46
av nit
utf8_swedish_ci
Re: krypterinsproblem
Postat: 2013-10-02 17:50
av nit
Förlåt att jag svara två ggr på rad men jag hittade ej edit-knappen. Jag provade ändra prs-type från varchar till float och la till utf8_encode
Kod: Markera allt
$code = $conn->real_escape_string(utf8_encode(md5($_POST['code'])));
och det funkade.
Kan någon svara varför?