Tak tu mám další problém. Mám dvě proměnné, které porovnávám, jestli jsou stejné. Napíšu raději ten kód:
<?php
public function beforeRenderPassword() {
if(isset($_POST["changePasswordSubmit"]))
{
$old = htmlspecialchars($_POST["old_password"]);
$new = htmlspecialchars($_POST["new_password"]);
$identity = mysql_fetch_array($this->users->getIdentity($_SESSION["logged"]));
if(Authenticator::calculateHash($old) == $identity["password"])
{
$this->users->changePassword($_SESSION["logged"]);
} else
{
$this->tpl->assign("message", array(
"type" => "error",
"text" => "Zadané heslo se neshoduje se současným."));
}
}
}
Když vypíšu obě proměnné ($old, $identity["password"]), zdají se být stejné, ale PHP vrací false. Nevíte co s tím?
Edit:
Mimochodem proměnné mají hodnoty:
$old = f67e16b6017a46bd241279eb7684b5710544425f
$identity["password"] = f67e16b6017a46bd241279eb7684b5710544425f