J'ai un gros défie et j'ai besoin de votre aide de programmeur expérimenté pour le faire.
J'ai un ptit contrat a faire qui consiste à prendre les données des compte utilisateur d'un site d'annonce classée et de les importer dans un autre script d'annonces classée parce que le propriétaire du si a décider d'utiliser un autre script car son script initial est encodé donc le code est non modifiable.
Là je dois importer ses données dans Noah classified add
Le problème est que les mot de passe de son site initial sont encrypté avec md5() tandis que Noah utilise une méthode nébuleuse à mon niveau de connaissance.
Donc, je veux modifier Noah pour que il soit en md5()
J,ai bien étudier le code et tout se qui est en lien au mot de passe utilise ne fonction que je ne comprend pas.
Je vous colle la fonction et svp expliquez moi se que vous en comprenez:
function getPassword( $s )
{
$s=addcslashes($s,"'\\");
$version = mysql_get_server_info();
$mainVersion = intval($version[0]);
$subVersion = intval($version[2]);
$pwdQuery = ($mainVersion==4 && $subVersion==0) || $mainVersion<4 ? "password" : "old_password";
$data = mysql_query("select $pwdQuery('$s')");
$row = mysql_fetch_row($data);
return $row[0];
}
Voici une fonction où cette précédente fonction est utilisé:function validLogin()
{
$user = new User;
$user->setUniqueValue($this->getUniqueValue());
if( load($user, array($this->getUniqueAttr())) || $user->id==$user->name ) Roll::setFormInvalid();
else
{
if( getPassword($this->password)!=$user->password && $user->newPassword )
{
if( getPassword($this->password)==$user->newPassword )
{
executeQuery(array("UPDATE @user SET password='$user->newPassword', newPassword='' WHERE id=#id#", $user->id));
}
else Roll::setFormInvalid();
}
elseif( getPassword($this->password)!=$user->password ) Roll::setFormInvalid();
$this->id = $user->id;
$this->lastClickTime = $user->lastClickTime;
}
if( Roll::isFormInvalid() ) Roll::setInfoText("loginInvalid");
return !Roll::isFormInvalid();
}
Merci, j'espère que vous pourrez m'aider!