За последние 24 часа нас посетили 70503 программиста и 10304 робота. Сейчас ищут 3176 программистов ...

Помогите с кодом для восстановлением пароля.

Тема в разделе "PHP для новичков", создана пользователем Verico, 15 апр 2017.

  1. Verico

    Verico Новичок

    С нами с:
    13 апр 2017
    Сообщения:
    36
    Симпатии:
    0
    Короче код сейчас выглядит следующим образом
    PHP:
    1. <?php
    2. header('Content-type: text/html; charset=utf-8');
    3.     include "$settings_dir/bd.php";
    4. $login = mysql_real_escape_string($_POST['login']);
    5. $email = mysql_real_escape_string($_POST['email']);
    6. $password = mysql_real_escape_string($_POST['password']);
    7. $query = "SELECT `login`
    8. FROM `user`
    9. WHERE `login`='$login'
    10. LIMIT 1";
    11.      $sql = mysql_query($query) or die(mysql_error());
    12.  
    13.     if (mysql_num_rows($sql)==1)
    14.     {
    15.         $simvols = array("0","1","2","3","4","5","6","7","8","9",
    16.                         "a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",
    17.                         "A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
    18.         for ($key = 0; $key <6; $key++)
    19.         {
    20.             shuffle($simvols);
    21.             $string = $string.$simvols[1];
    22.         }
    23. $pass = md5(md5($string));
    24.  
    25. $query = "UPDATE 'password'
    26. SET 'password'='$password'
    27. WHERE 'login'= '$login'";
    28.     $sql = mysql_query($query) or die (mysql_error());
    29.  
    30.  
    31.  
    32. $query = "SELECT 'email'
    33. FROM 'user'
    34. WHERE 'login' ='$login'";
    35.     $sql = mysql_query($query) or die (mysql_error());
    36.  
    37. $row = mysql_fetch_assoc($sql);
    38. $email = $row['email'];
    39.  
    40. email ($email, "Вы подавали запрос на востановление пароля" , "Здравствуйте $login это  ваш новый пароль : $string");
    41.  
    42.     }
    43.  
    44. ?>

    Скоб нет)
     
  2. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.971
    Симпатии:
    753
    вот это исправь на это:
    PHP:
    1. UPDATE password SET password='$password' WHERE login= '$login'";
    или на это:
    PHP:
    1. UPDATE `password` SET `password`='$password' WHERE `login`= '$login'";
    И во всех остальных запросах аналогично.

    По запросам больше подсказывать не буду.
     
    Verico нравится это.
  3. Verico

    Verico Новичок

    С нами с:
    13 апр 2017
    Сообщения:
    36
    Симпатии:
    0
    Большое спасибо, ещё парочку ошибок исправил и все сработало. Хорошо что в нашем королевстве ещё есть такие люди как вы.
    И ещё один вопросик, а будет ли оно приходить на мыло, ведь я пока учусь на локалке , а от кого письмо тогда?
     
  4. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    849
    Симпатии:
    199
    Адрес:
    Санкт-Петербург
    Если на локалке настроен почтовый сервер - то будет. Правда, есть большая вероятность, что будет приходить в спам.
    Но если используешь денвер/опенсервер, то там вроде по умолчанию на почтовом сервере стоит заглушка, письма не отправляются, а просто складываются в папку
     
  5. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.971
    Симпатии:
    753
    забей пока на почту.
     
  6. Verico

    Verico Новичок

    С нами с:
    13 апр 2017
    Сообщения:
    36
    Симпатии:
    0
    Я понял, спасибо у меня как раз Денвер
    --- Добавлено ---
    Та главное что получается, хоть и с вашей помощью)
    Сейчас вот куками начну заниматься
     
  7. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.971
    Симпатии:
    753
    OpenServer круче и удобнее на много. Привыкай сразу к хорошему :)