djmartins Posted September 8, 2009 Report Posted September 8, 2009 Problēma ir tāda, ka netiek atkodēta parole no datubāzes, kas šeit varētu būt nepareizi, jeb arī problēma meklējama pašā datubāzē? <? session_start(); include("config.php"); $username=$_POST["username"]; $password=md5($_POST["password"]); $ress=mysql_query("select * from user where username='$username'") or die(mysql_error()); $rows=mysql_fetch_array($ress); if(($rows["username"]==$username)&&($rows["password"]==$password)) { $_SESSION['webuser']=$username; header ("Location: index.php"); } else { header ("Location: index1.php"); } ?> Quote
waplet Posted September 8, 2009 Report Posted September 8, 2009 md5 ir vienvirziena šifrēšanas algoritms Quote
briedis Posted September 8, 2009 Report Posted September 8, 2009 Paskaties vai datubāzē paroles kolonnas garums ir vismaz 32 simboli, varbūt saglabājot tiek nogriezts parolei gals vai kā... Quote
rATRIJS Posted September 8, 2009 Report Posted September 8, 2009 Nu pirmām kārtām, dīdžei mārtiņ, paskaties kas ir mysql_real_escape_string. Tālāk - no md5 atpakaļ oriģinālo paroli tu nedabūsi un tas nav vajadzīgs. Lai pārbaudītu vai ievadītā parole ir īstā salīdzini paroles hašu. $pass = "parole" //ievadītā parole $pass_from_db = "xxx...." //paroles hash if(md5($pass) == $pass_from_db) { echo "Viss OK" } Quote
djmartins Posted September 8, 2009 Author Report Posted September 8, 2009 Paldies briedi, vaina tomēr bija datubāzē, biju norādījis 20 simboli. Quote
bubu Posted September 8, 2009 Report Posted September 8, 2009 md5 ir vienvirziena šifrēšanas algoritms Jau kuro reizi... md5 NAV šifrēšanas algoritms. MD5 ir jaucēj-funkcija (hashfunction). Heš-funkcija neko nešifrē. Quote
briedis Posted September 8, 2009 Report Posted September 8, 2009 Paldies briedi, vaina tomēr bija datubāzē, biju norādījis 20 simboli. heh, man ar tā ir gadījies :) Kamēr atrod šito problēmu var ilgs laiks paiet... Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.