MD5 шифровать все пароли в таблице - PullRequest
0 голосов
/ 11 сентября 2011

У меня есть таблица базы данных с именем user, где у меня есть несколько столбцов. Одним из этих столбцов является пароль пользователя.

Этот пароль не зашифрован, теперь я должен автоматически захватить всех пользователей и все пароли в этой таблице, зашифровать их и обновить таблицу новыми зашифрованными паролями.

Что я могу сделать? Использование цикла PHP? Или что?

Я немного потерян здесь ..

Не могли бы вы привести рабочий пример?

Поэтому я выбираю пароли из таблицы

$query="SELECT * FROM users";
$ar=mysql_query($query) or die("Error selecting accounts: ".mysql_error());
$ac = mysql_num_rows($ar);
while($arow = mysql_fetch_array($ar)) {
$password = $arow['Password'];
}
AND.......

После этого я полностью потерялся.

Не могли бы вы мне помочь?

Спасибо

Ответы [ 2 ]

4 голосов
/ 11 сентября 2011

Введите этот код на страницу SQL-запроса phpMyAdmin.Сначала войдите в phpMyAdmin, затем выберите БД и таблицу, а затем нажмите «SQL».Затем вам нужно ввести это в поле и отправить:

UPDATE users SET password = MD5(CONCAT(password, user_id))

РЕДАКТИРОВАТЬ

ОП хотел фактический код PHP:

$query = "UPDATE users SET password = MD5(CONCAT(password, user_id))";
$ok = mysql_query($query);

Не может быть яснее, чем это.Вы должны убедиться, что поле пароля достаточно велико для хранения хешей md5.Помните, что хеши md5 имеют длину 32 символа.

0 голосов
/ 11 сентября 2011

DiegoP спросил способ сделать это с PHP, и вот оно (по какой-то причине я не мог добавить комментарий там ..)

$db    = Do database connection here;
$query = "UPDATE users SET password = MD5(CONCAT(password, user_id))";
$doit  = mysql_query($query, $db);

РЕДАКТИРОВАТЬ: Если хотите циклэто использовать

<?php
$q = "SELECT * FROM users";
$s = mysql_query($q, $connection);

for ($i = 0; $i < mysql_num_rows($s); $i++) {
$uid = mysql_result($s, $i, "user_id");
$pass = mysql_result($s, $i, "password");
$s2 = mysql_query("UPDATE users SET password = MD5(CONCAT('".$pass."', '".$uid."')) WHERE user_id = '".$uid."'");
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...