Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Форма восстановления пароля на сайте
Форумы портала PHP.SU » PHP » Программирование на PHP » Форма восстановления пароля на сайте

Страниц (1): [1]
 

1. seon1981 - 29 Января, 2016 - 16:29:58 - перейти к сообщению
Кто сможет помочь.
Проблема вот в чем. Форма восстановления пароля не работает. Файл восстановления пароля в кодировке UTF-8. На мыло письмо не приходит. Но если я его перевожу в формат WINDOWS-1251, то и сама страница с непонятными значками и письмо приходит такое же.
Кто знает как исправить данную проблему
2. andrewkard - 29 Января, 2016 - 17:38:28 - перейти к сообщению
seon1981 пишет:
Файл восстановления пароля в кодировке UTF-8

перекодировать в win-1251, нет?
3. seon1981 - 29 Января, 2016 - 17:46:20 - перейти к сообщению
andrewkard пишет:
перекодировать в win-1251, нет?


В том то и дело, если перекодирую в win-1251, то на мыло приходит, но и сама страница с крокозябринами и письмо такоеже приходит.
4. andrewkard - 29 Января, 2016 - 18:04:09 - перейти к сообщению
В атрибуте meta charset что указано?
5. seon1981 - 29 Января, 2016 - 18:05:35 - перейти к сообщению
$headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n";
6. andrewkard - 29 Января, 2016 - 18:27:51 - перейти к сообщению
Какая кодировка самого файла?
7. seon1981 - 29 Января, 2016 - 18:29:08 - перейти к сообщению
UTF-8
8. andrewkard - 29 Января, 2016 - 18:41:37 - перейти к сообщению
Форма отправляется в этот же файл или другой. Есть возможность посмотреть ошибки/логи при отправке почты. Чем отправляете?
9. seon1981 - 29 Января, 2016 - 18:45:49 - перейти к сообщению
Код в файле
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?
  3. if(isset($_POST['user'])) {
  4. $user = sf($_POST['user']);
  5. if(isset($_SESSION['captcha']) && strtolower($_SESSION['captcha']) == strtolower($_POST['code'])){     
  6. $q = mysql_query("SELECT * FROM tb_users WHERE username = '$user'");
  7. if(mysql_num_rows($q) == 1) {
  8. $chars="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTGBNHYUJMKIOLP";
  9. $max=10;
  10. $size=strlen($chars)-1;
  11. $cpass=null;
  12.  
  13. while($max--)
  14.    $cpass.=$chars[rand(0,$size)];
  15. $pass = md5Password($cpass);
  16. mysql_query("UPDATE tb_users SET password = '$pass' WHERE username = '$user'") or die(mysql_error());
  17.  
  18.  
  19.  
  20.  
  21.                         $subject = "Востановление пароля";
  22.                         $headers  = 'MIME-Version: 1.0' . "\r\n";
  23.                         $headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n";
  24.                         $headers.= "From: support@".$_SERVER['HTTP_HOST']." \r\n";
  25.  
  26.                         $text = "Здравствуйте <b>".$user."!</b><br />Вы запросили востановление пароля в сервисе <a href=\"http://".$_SERVER['HTTP_HOST']."/\" target=\"_blank\">http://".$_SERVER['HTTP_HOST']."</a><br />Ваш Login: <b>".$user."</b><br />Ваш новый пароль: <b>".$cpass."</b><br />                   Отвечать на письмо не надо, это робот сайта!!!<br />                    С Уважением, администрация проекта ".$_SERVER['HTTP_HOST'];
  27.  
  28.                         mail($w['email'], $subject, $text, $headers);
  29.                        
  30.                         echo '<center><font color="green">Новый пароль отправлен Вам на почту!</font></center>';
  31. }else echo '<center><font color="red">Пользователь не найден</font></center>';
  32.  
  33. }
  34. }
  35. ?>
  36.  
  37.  
  38. <form action="" method="post">
  39.                 <label>Логин</label>
  40.                 <input name="user" placeholder="Введите ваш логин в игре" value="" type="text" size="20" required />
  41.                 <label>Код на картинке</label>
  42.                 <img align="middle" src="/captcha.php?<?php echo session_name()?>=<?php echo session_id()?>" name="capc" alt="" />
  43.                 <a href="#" onclick="this.src=this.src+'&'+Math.round(Math.random())"><img src="/images/reload.gif" align="middle" border="0" alt="" /></a>            
  44.                 <label></label>
  45.                 <input name="code" placeholder="Код" value="" type="text" size='15' maxlength='6' required />
  46.                 <label></label>
  47.                 <input class="buttonmail" value="Высылать пароль" type="submit" />  
  48.         </form><br />   Если сообщение не приходит, свяжитесь с нами по ICQ <script type="text/javascript">
  49. <!--
  50. document.write('<img border="0" src="http://status.icq.com/online.gif?icq=667924190&img=26&rnd='+Math.rnd+'" title="Статус ICQ" />')
  51. //-->
  52. </script>
  53. <noscript><img border="0" src="http://status.icq.com/online.gif?icq=667924190&img=26" title="Статус ICQ" /></noscript><font color="red"> 667924190
  54. </font> или по почте <font color="red">se_on@i.ua</font><br />  <center><img src="/images/kozak_m.png"></center>
  55.  
10. andrewkard - 01 Февраля, 2016 - 14:42:11 - перейти к сообщению
Визуально ошибок не видно, нужно дебажить.
11. seon1981 - 06 Февраля, 2016 - 10:27:47 - перейти к сообщению
andrewkard пишет:
Визуально ошибок не видно, нужно дебажить.


Извиняюсь, но я не очень понял что такое "дебажить"
12. seon1981 - 06 Февраля, 2016 - 18:12:47 - перейти к сообщению
seon1981 пишет:
andrewkard пишет:
Визуально ошибок не видно, нужно дебажить.


Извиняюсь, но я не очень понял что такое "дебажить"


Разобрался спасибо за помощь.
13. vanekk17 - 11 Марта, 2016 - 15:35:20 - перейти к сообщению
seon1981 пишет:
seon1981 пишет:
andrewkard пишет:
Визуально ошибок не видно, нужно дебажить.


Извиняюсь, но я не очень понял что такое "дебажить"


Разобрался спасибо за помощь.

А в чём то хоть дело было?

 

Powered by ExBB FM 1.0 RC1