2012-11-19 78 views
-1

这里是我的代码,使用盐对密码加密PHP

<?php 


    function($string){ 
    $salt = "@x5v"; 
    $hash = sha1(md5($salt.$string)).md5($string).sha1(md5($string)); 
    return $hash; 
    } 
    ?> 
    <?php 

    print "<center>"; 
    if(isset($_POST['username'])){ 
    echo 'Variable is set and I can use it!'; 
    } 
    $Username = $_POST["username"]; 
    $Password = md5($_POST["password.$hash"]); 
    $Email = $_POST["email"]; 


?> 

我认为这是该行导致该问题:

$Password = md5($_POST["password.$hash"]); 

什么是正确的语法通过用户密码进入数据库,用我上面定义的字符串加密?

+2

我希望盐不是一个常数。 – Leri

回答

2

我认为这是该行导致该问题:

$密码= MD5($ _ POST [ “密码散列$”]);

你在这里做什么是不正确的。它应该是:

$Password = md5($_POST["password"] . $hash); 

什么你在做实际上是在建立索引以$ _ POST与会已经结束了类似“password.fdg858fug83u5g5”的关键。