我不是专业开发人员所以我的问题可能听起来很愚蠢,对不起,
我正在创建一个Android应用程序,它连接到存储密码的用户数据库 哈希格式,所以我不知道如何在我的php文件中包含这个函数user_hash_password,这样我就可以对输入的密码进行哈希处理,然后将其与数据库中的密码进行匹配,我想你可以帮助我学习它。顺便说一下,已存储的密码使用相同的函数进行哈希处理。
非常感谢您的帮助:)
<?php
$hostname = "localhost";
$database = "android";
$username = "root";
$password = "";
$localhost = mysql_connect($hostname, $username, $password)
or trigger_error(mysql_error(),E_USER_ERROR);
mysql_select_db($database, $localhost);
$username = $_POST['username'];
$password = $_POST['password'];
$query = "select * from drupal_users where username = '".$username."' AND password = '".$password."'";
$query_exec = mysql_query($query) or die(mysql_error());
$rows = mysql_num_rows($query_exec);
if($rows == 0) {
echo "No user was found";
}else {
echo "User found";
}
?>
答案 0 :(得分:0)
首先在md5(密码)中保存数据库中的密码。比拿取使用时
> $query = "select * from drupal_users where username = '".$username."'
> AND password = '".md5($password)."'";
答案 1 :(得分:0)
您需要使用与存储它们相同的方法来散列$_POST['password']
。
就像这样:
$password = user_hash_password($_POST['password']);
但您需要包含包含此方法的drupal文件(includes/password.inc
)。
如果你创建一个外部php文件而不是drupal模块,你应该尝试研究如何包含你的功能。
Calling Drupal functions in external PHP file
Drupal: how to access to Drupal's APIs with a standalone php script?
或者您可以通过重新创建并查找所需的变量/常量来对哈希方法进行反向工程。
在这种情况下DRUPAL_HASH_COUNT
。