Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
25 / 9 / 17
Регистрация: 22.12.2015
Сообщений: 2,097

Как восстановить пароль?

26.07.2018, 20:02. Показов 1066. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<?php
   ini_set('display_errors', 'On');
error_reporting(E_ALL);
    $DBHOST = "localhost";
    $DBUSER = "test";
    $DBPASSWORD = "test";
    $DBNAME = "test";
  
$mysqli = new mysqli($DBHOST, $DBUSER,  $DBPASSWORD , $DBNAME);  
if (mysqli_connect_errno()) { 
   printf("Conecnt in server MySQL in not. Code error: %s\n",
   mysqli_connect_error()); 
   exit; 
} 
else{
    echo '<pre>';
     printf("Conected is good. \n");
     echo '</pre>';
}
    $mysqli->set_charset("utf8");
    if (isset($_POST['restore_pass'])) {
    $user_mail = $mysqli->real_escape_string($_POST['mail']);
    
    $query = ("SELECT * FROM  wp_users  
WHERE user_mail = '$user_mail' ");
    
 $sql = $mysqli->query($query) or 
  printf("Zapros ne udalsa': %s\n", mysqli_connect_error());
 
 
$simv = array ("92", "83", "7", "66", "45", "4", "36", "22", "1", "0", 
 "k", "l", "m", "n", "o", "p", "q", "1r", "3s", "a", "b", "c", "d", "5e", "f", "g",
 "h", "i", "j6", "t", "u", "v9", "w", "x5", "6y", "z5");
 for ($k = 0; $k < 8; $k++)
         {
         shuffle ($simv);
         $string = $string.$simv[1];
         }
 
 
$zapros = ("UPDATE wp_users` SET `user_pass`='$string' 
WHERE user_mail = '$user_mail' ");
 
 $sql = mysqli_query($zapros) or 
   printf("Zapros update ne udalsa': %s\n", die(mysqli_connect_error());
 
 
$to = $user_email;
$subject = "zapros-na-vosstanovlenie-parolya";
$message = '
                <html>
                    <head>
                   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
                        <title>Thema page</title>
                    </head>
                    <body>
                        <p>"Hello, $user_email. Your new password: $string"</p>
                    </body>
                </html>';
// устанавливаем тип сообщения Content-type, если хотим
                $headers  = 'MIME-Version: 1.0' . "\r\n";
                $headers .= "Content-type: text/html; charset=utf-8 \r\n";
 
                // дополнительные данные
                $headers .= "From: $fio <$user_email>\r\n"; // от кого
                mail($to, $subject, $message, $headers);
 
 echo "Na vash pochtovyj yashchik bylo otpravleno pis'mo s novyj parolem";
    $mysqli->close();
    }
    ?>
 <p><b>Restore password</b></p>
 <form name="form1" method="post" action="vosst_pass.php">
 <p><i>Your e-mail </i><input type="text" name="mail" size="30" /></p>
 <p>
 <input type="submit" name="restore_pass" value="restore_pass"  size="30">
 </p>
 </form>
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.07.2018, 20:02
Ответы с готовыми решениями:

Подскажите кодинг морды сменя пароля...(1 страниц вводим логин и пас если правильно вылазит 2 типо смените новый пароль...а 3 пароль сменен)
Только нужно учесть хэширование и хранение проля в отдельном файлике

Как восстановить данные?
кто нибудь сталкивался с вот такой проблемой? Как такое могло произойти, ведь часть текста нормально отображается, часть &quot;?&quot; и...

Кто знает как восстановить сайт на php
Добрый день,возникла проблема: Хостинг удалил акаунт, я восстановил его из бек ап, но название базы даных другое чем было до этого , внёс...

4
767 / 323 / 157
Регистрация: 26.05.2016
Сообщений: 2,127
26.07.2018, 20:08
Ну и?
0
25 / 9 / 17
Регистрация: 22.12.2015
Сообщений: 2,097
26.07.2018, 21:51  [ТС]
Цитата Сообщение от andyyy Посмотреть сообщение
Ну и?
Не работает,
1 Соеденяемся с бд
2 нужно проверить email регуляркой,может там мусор введен.Не реализовано.
3 Проверяем есть ли e-mail в базе.
4 Генерим новый пароль
5 Заносим его в бд
6 если п3 верен то отправляем п4

Добавлено через 3 минуты
Цитата Сообщение от scherbakovss201 Посмотреть сообщение
1 Соеденяемся с бд
соеденяеться успешно.

Добавлено через 39 минут
Вариант 2,чего-то ошибка на 62 строки
Parse error: syntax error, unexpected $end in T:\home\test1.ru\www\sql\vosst_pass.php on line 62
при открытии
http://test1.ru/sql/vosst_pass.php

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
   ini_set('display_errors', 'On');
error_reporting(E_ALL);
    $DBHOST = "localhost";
    $DBUSER = "test";
    $DBPASSWORD = "test";
    $DBNAME = "test";
  
$mysqli = new mysqli($DBHOST, $DBUSER,  $DBPASSWORD , $DBNAME);  
if (mysqli_connect_errno()) { 
   printf("Conecnt in server MySQL in not. Code error: %s\n",
   mysqli_connect_error()); 
   exit; 
} 
else{
    echo '<pre>';
     printf("Conected is good. \n");
     echo '</pre>';
}
    $mysqli->set_charset("utf8");
    
    function generateRandomString($length) 
{
return substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, $length);    
}
    
    if (isset($_POST['restore_pass'])) 
    {
            $user_mail = $mysqli->real_escape_string($_POST['mail']);
            $query = ("SELECT * FROM  wp_users  
        WHERE user_mail = '$user_mail' ");
            
         $result = $mysqli->query($query) or 
          printf("Zapros ne udalsa': %s\n", mysqli_connect_error());
         
         if ($result = $mysqli->query($query)) 
        {
                /* извлечение ассоциативного массива */
                while ($row = $result->fetch_assoc()) {
                    printf ("user_mail:  (%s)\n", $row["user_mail"]);
                    $subject = "Restore password ";
                    $message = "Hello,New password = " + ' ' + generateRandomString(10) ;
            mail($row["user_mail"], $subject, $message);
            printf ("Na vash pochtovyj yashchik bylo otpravleno pis'mo s novyj parolem");
                $zapros = ("UPDATE wp_users` SET `user_pass`= md5(generateRandomString(10)) 
            WHERE user_mail = '$user_mail' ");
 
             mysqli_query($zapros) or 
               printf("Zapros update ne udalsa': %s\n", mysqli_connect_error());
        }
 
        
    }
    $mysqli->close();
    ?>
 <p><b>Restore password</b></p>
 <form name="vosst_pass" method="post" action="vosst_pass.php">
 <p><i>Your e-mail </i><input type="e-mail" name="mail" size="30" /></p>
 <p>
 <input type="submit" name="restore_pass" value="restore_pass"  size="30">
 </p>
 </form>
Добавлено через 44 минуты
Цитата Сообщение от scherbakovss201 Посмотреть сообщение
Вариант 2,чего-то ошибка на 62 строки
Parse error: syntax error, unexpected $end in T:\home\test1.ru\www\sql\vosst_pass.php on line 62
при открытии
http://test1.ru/sql/vosst_pass.php
Подправил,теперь запрос в бд не добавляеться и на почту письмо не приходит
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
 <p><b>Restore password</b></p>
 <form name="vosst_pass" method="post" action="vosst_pass.php">
     <p>
        E-mail: <input type='text' name='email' value='scherbakovss@yandex.ru'/>
    </p>
 <p>
 <input type="submit" name="restore_pass" value="restore_pass"  size="30">
 </p>
 </form>
<?php
   ini_set('display_errors', 'On');
error_reporting(E_ALL);
    $DBHOST = "localhost";
    $DBUSER = "test";
    $DBPASSWORD = "test";
    $DBNAME = "test";
  
$mysqli = new mysqli($DBHOST, $DBUSER,  $DBPASSWORD , $DBNAME);  
if (mysqli_connect_errno()) 
{ 
   printf("Conecnt in server MySQL in not. Code error: %s\n",
   mysqli_connect_error()); 
   exit; 
} 
else
{
    echo '<pre>';
     printf("Conected is good. \n");
     echo '</pre>';
}
    $mysqli->set_charset("utf8");
    
    function generateRandomString($length) 
{
return substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, $length);    
}
    
    if (isset($_POST['restore_pass'])) 
    {
          $user_email = $mysqli->real_escape_string(htmlspecialchars($_POST['email'])); 
         printf("generate random password': %s\n", generateRandomString(10));
        $query = ("SELECT * FROM `wp_users`   
        WHERE `user_email` = '$user_email' ");  
         $result = $mysqli->query($query) or 
          printf("Zapros ne udalsa': %s\n", mysqli_connect_error());     
    
 
        if ($result = $mysqli->query($query)) 
        {
                /* извлечение ассоциативного массива */
                while ($row = $result->fetch_assoc()) 
                {
                    printf ("user_mail:  (%s)\n", $row["user_email"]);
                    $subject = "Restore password ";
                    $message = "Hello,New password = " + ' ' + generateRandomString(10) ;
            mail($row["user_email"], $subject, $message);
            printf ("Na vash pochtovyj yashchik bylo otpravleno pis'mo s novyj parolem");
                $zapros = ("UPDATE `wp_users`  SET `user_pass` = MD5(generateRandomString(10)) 
            WHERE user_email = '$user_email' ");
 
             mysqli_query($zapros) or 
               printf("Zapros update ne udalsa': %s\n", mysqli_connect_error());
                }   
        }   
    }
    $mysqli->close();
?>
Добавлено через 23 секунды
Conected is good.
generate random password': VYBMKHJzjb user_mail: (scherbakovss@yandex.ru) Na vash pochtovyj yashchik bylo otpravleno pis'mo s novyj parolem
Warning: mysqli_query() expects at least 2 parameters, 1 given in T:\home\test1.ru\www\sql\vosst_pass.php on line 61
Zapros update ne udalsa':

Добавлено через 10 минут
Цитата Сообщение от scherbakovss201 Посмотреть сообщение
Warning: mysqli_query() expects at least 2 parameters, 1 given in T:\home\test1.ru\www\sql\vosst_pass.php on line 61
вот правильно
PHP
1
mysqli_query($mysqli,$zapros) or
чего новый пароль по запросу Update не применяеться?
0
25 / 9 / 17
Регистрация: 22.12.2015
Сообщений: 2,097
26.07.2018, 21:53  [ТС]
0
25 / 9 / 17
Регистрация: 22.12.2015
Сообщений: 2,097
26.07.2018, 23:05  [ТС]
Цитата Сообщение от scherbakovss201 Посмотреть сообщение
его новый пароль по запросу Update не применяеться?
Запрос получился,а вот почта не отправляеться
PHP
1
2
3
4
5
6
7
8
9
10
$zapros = ("UPDATE  `test`.`wp_users` 
            SET  `user_pass` = MD5('generateRandomString(10)' )
            WHERE  `user_email` = '$user_email'  ");
              echo '<pre>';
              echo '</pre>';
              
             mysqli_query($mysqli,$zapros ) or 
               printf("Zapros update ne udalsa': %s\n", mysqli_connect_error());
              echo '<pre>';
              echo '</pre>';
Добавлено через 55 минут
Уже все работает,я с денвера отправлял,нужно было sendmail установить и настроить на 465 порт gmail
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.07.2018, 23:05
Помогаю со студенческими работами здесь

Как расшифровать пароль
Разбираю пример в инете нашёл(пример не оттестирован и поэтому в нём ошибки), так вот для шифрования пароля при регистрации, там...

Как показать пароль?
Видел на одном сайте вводишь пароль при регистрации - точки. А сбоку кнопка есть &quot;показать пароль&quot; - нажимаешь и видно буквы...

Как восстановить пароль к Wi-Fi
Добрый день! У меня такой вопрос: Что мне делать естли я не знаю пароль от своего Wi-Fi

Как восстановить забытый пароль?
Помогите пожалуйста. Забыл свой парол. как можно войти в компьютер?

как восстановить пароль админа
Забыл пароль администратора, сайт находится на локальном сервере. пробовал скрипт: &lt;? ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru