XGP 2.9* Старничка Входа

ShadoWx

Новичок
Репутация
0 / 97
Если вам надоела стандартная xg страничка со входом то смените ее на эту!

61df8f30.jpg


Модифицированная страничка входа на ваш сервер.
Ссылка:
 
Неплохая страница, но...
Когда восстанавливаю пароль
На мыло приходит крякозябра (разные русские буквы) и пароль..
Нужно кодировку шоль поменять...
Версия 2.9.4
 
Так она от дефолта тока фоном отличается =/
 
Неплохая страница, но...
Когда восстанавливаю пароль
На мыло приходит крякозябра (разные русские буквы) и пароль..
Нужно кодировку шоль поменять...
Версия 2.9.4
Это вроде не от index страницы зависит.
 
kokainys, давайте разбираться.
Функция по смене пароля находится в файле Index.php
Код:
case'lostpassword':
        function sendnewpassword($mail)
        {
            global $lang;

            $ExistMail = doquery("SELECT `email` FROM {{table}} WHERE `email` = '". $mail ."' LIMIT 1;", 'users', true);

            if (empty($ExistMail['email']))
            {
                message($lang['mail_not_exist'], "index.php?modo=claveperdida",2, false, false);
            }
            else
            {
                $Caracters="aazertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN1234567890";
                $Count=strlen($Caracters);
                $NewPass="";
                $Taille=6;
                srand((double)microtime()*1000000);
                for($i=0;$i<$Taille;$i++)
                {
                    $CaracterBoucle=rand(0,$Count-1);
                    $NewPass=$NewPass.substr($Caracters,$CaracterBoucle,1);
                }
                $Title     = $lang['mail_title'];
                $Body     = $lang['mail_text'];
                $Body  .= $NewPass;
                mail($mail,$Title,$Body);
                $NewPassSql = md5($NewPass);
                $QryPassChange = "UPDATE {{table}} SET ";
                $QryPassChange .= "`password` ='". $NewPassSql ."' ";
                $QryPassChange .= "WHERE `email`='". $mail ."' LIMIT 1;";
                doquery( $QryPassChange, 'users');
            }
        }

        if($_POST)
        {
            sendnewpassword($_POST['email']);
            message($lang['mail_sended'], "./",2, false, false);
        }
        else
        {
            $parse['forum_url']    = $game_config['forum_url'];
            display(parsetemplate(gettemplate('public/lostpassword'), $parse), false, '',false, false);
        }
    break;

Отсюда мы видем, что текст берется из файла языка,а именно фразы:
$Title = $lang['mail_title'];
$Body = $lang['mail_text'];

Проверьте, правильно ли выставлена кодировка файла PUBLIC.mo


если непомогает, то делаем так:

Код:
case'lostpassword':
        function sendnewpassword($mail)
        {
            global $lang;

            $ExistMail = doquery("SELECT `email` FROM {{table}} WHERE `email` = '". $mail ."' LIMIT 1;", 'users', true);

            if (empty($ExistMail['email']))
            {
                message($lang['mail_not_exist'], "index.php?modo=claveperdida",2, false, false);
            }
            else
            {
                $Caracters="aazertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN1234567890";
                $Count=strlen($Caracters);
                $NewPass="";
                $Taille=6;
                srand((double)microtime()*1000000);
                for($i=0;$i<$Taille;$i++)
                {
                    $CaracterBoucle=rand(0,$Count-1);
                    $NewPass=$NewPass.substr($Caracters,$CaracterBoucle,1);
                }
                $Title     = $lang['mail_title'];
$Body     = $lang['mail_text'];
                
  $headers .= "MIME-Version: 1.0\n";  
    $headers .="Content-Type: multipart/mixed;\n";  
    $headers .= "From: $from_name <$from_mail>\n";  
    $encoding = 'windows-1251'; 
    $multipart .= "Content-Type: text/html; charset=$encoding\n";  
    $multipart .= "Content-Transfer-Encoding: Quot-Printed\n\n";  
    
                $Body  .= $NewPass;
                mail($mail,$Title,$Body,$multipart, $headers);
                $NewPassSql = md5($NewPass);
                $QryPassChange = "UPDATE {{table}} SET ";
                $QryPassChange .= "`password` ='". $NewPassSql ."' ";
                $QryPassChange .= "WHERE `email`='". $mail ."' LIMIT 1;";
                doquery( $QryPassChange, 'users');
            }
        }

        if($_POST)
        {
            sendnewpassword($_POST['email']);
            message($lang['mail_sended'], "./",2, false, false);
        }
        else
        {
            $parse['forum_url']    = $game_config['forum_url'];
            display(parsetemplate(gettemplate('public/lostpassword'), $parse), false, '',false, false);
        }
    break;


По идее должно работать!
 
Спасибо..заработало..но..

Сообщение приходит от World Wide Web Owner, где сменить?)
и ещё приходит сообщение с хоста когда высылаешь пароль:

<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'>This is the mail system at host mail.kilobyte.com.ua.

I'm sorry to have to inform you that your message could not
be delivered to one or more recipients. It's attached below.

For further assistance, please send mail to postmaster.

If you do so, please include this problem report. You can
delete your own text from the attached returned message.

The mail system

<"1.0Content-Type:"@mail.kilobyte.com.ua> (expanded from <"1.0Content-Type:">):
unknown user: "1.0content-type:"

<"From:"@mail.kilobyte.com.ua> (expanded from <"From:">): unknown user: "from:"

<"MIME-Version:"@mail.kilobyte.com.ua> (expanded from <"MIME-Version:">):
unknown user: "mime-version:"

<multipart/[email protected]> (expanded from <multipart/mixed>):
unknown user: "multipart/mixed"
</div>
 

Похожие темы

Сверху