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];
}
Bah on va traduire ensemble.

Alors, on va dire que cette fonction encode un mot de passe fourni en paramètre, bon c'est tout à fait contestable de faire une requête juste pour cela mais passons.

On a ça :
Donc on fait un select pour récupérer un résultat. Le select exécute la fonction $pwdQuery sur l'argument $s.
Bon, $s, c'est simple, c'est l'argument de la fonction, donc c'est le mot de passe encodé.
Maintenant $pwdQuery. Hé bien plus haut, c'est indiqué ça :
$pwdQuery = ($mainVersion==4 && $subVersion==0) || $mainVersion<4 ? "password" : "old_password";
A vrai dire je ne connais pas la version mais bon, c'est pas vraiment utile pour comprendre. Tu vois que dans un cas compliqué, $pwdQuery vaudra "password", et dans un autre cas compliqué, $pwdQuery vaudra "old_password".
Donc, pour récapépéter, la fonction qui sera exécutée, ce sera password ou old_password. Le mot de passe sera donc encodé en format mysql password ou en format mysql old_password.
Donc en définitive, si tu as compris le raisonnement, tu constateras par toi même qu'il suffit juste de demander un mot de passe MD5 plutôt de PASSWORD ou OLD_PASSWORD. Et tu remarqueras aussi qu'il n'y a pas besoin de mysql pour générer un mot de passe au format MD5.
Bref, tu auras compris, après la modification, ta fonction getPassword fera une ligne, je te laisse la trouver
