Błąd przy mailowej aktywacji użytkownika - Strona 3
Strona 3 z 3 PierwszyPierwszy 123
Wyniki 21 do 25 z 25

Temat: Błąd przy mailowej aktywacji użytkownika

  1. #21
    Przeglądacz
    Dołączył
    17-08-2008
    Wpisy
    35
    Punkty
    10

    Domyślny

    Cytat Wysłane przez carlosplay Zobacz wiadomość
    Mam identyczny problem jak użytkownik Tor, tzn pojawia Komunikaty błędów:

    1.Nie udało się uruchomić wysyłania poczty.
    2.Konto zostało utworzone, a odsyłacz aktywacyjny przesłany na podany przez Ciebie adres. Po otrzymaniu wiadomości użyj odsyłacza, żeby uaktywnić swoje konto. Dopóki tego nie zrobisz, zalogowanie nie będzie możliwe

    Czy mogę prosić o rozwiązanie?
    Witam, mam taki sam problem, czy ktoś może mi pomóc?
    Pozdr.medic4

  2. Pani Reklamowa
    Pani Reklamowa jest aktywna
    Avatar Panny Google

    Dołączył
    19-08-2010
    Skąd
    Internet
    Postów
    milion
    Pochwał
    setki
  3. #22
    Senior zwiastun awatar
    Dołączył
    20-09-2005
    Wpisy
    27 315
    Punkty
    1142

    Domyślny

    W czym? Skonfigurowłeś pocztę? Jak?
    Korzystaj i ciesz się!
    ===============
    Zwiastun
    Biblioteka Elektronicznej Dokumentacji Joomla!

  4. #23
    Wyga Jola awatar
    Dołączył
    08-01-2008
    Skąd
    Wrocław
    Wpisy
    3 239
    Punkty
    386

    Domyślny

    Dzięki Renacie, która pozwoliła mi "mieszać" na swoim serwerze, udało mi się rozwikłać problem.
    Pierwsza sprawa to wersja PHP, jeśli jest wcześniejsza niż 5.0 trzeba zmienić parametry funkcji html_entity_decode().
    Druga sprawa - całkiem zabawna - błąd wysyłania emaila pojawia sie również jeśli nazwa witryny jest zbyt długa. Nazwa witryny dodawana jest do tytułu emaila - stąd pewnie ten problem.
    Wstawiam zmieniony kod funkcji _sendMail() z pliku components/com_user/controller.php
    Modyfikacja potrzebna w przypadku wersji PHP<5
    Kod PHP:
        function _sendMail(&$user$password)
        {
            global 
    $mainframe;

            
    $db        =& JFactory::getDBO();

            
    $name         $user->get('name');
            
    $email         $user->get('email');
            
    $username     $user->get('username');

            
    $usersConfig     = &JComponentHelper::getParams'com_users' );
            
    $sitename         $mainframe->getCfg'sitename' );
            
    $useractivation $usersConfig->get'useractivation' );
            
    $mailfrom         $mainframe->getCfg'mailfrom' );
            
    $fromname         $mainframe->getCfg'fromname' );
            
    $siteURL        JURI::base();

            
    $subject     sprintf JText::_'Account details for' ), $name$sitename);

            
    //$subject     = html_entity_decode($subject, ENT_QUOTES);
    //zmiana
            
    if((version_comparephpversion(), '5.0' ) < 0)) {
               
    $subject html_entity_decode($subject);
         } else {
               
    $subject html_entity_decode($subjectENT_QUOTES);
         }
    //koniec zmiana
            
    if ( $useractivation == ){
                
    $message sprintf JText::_'SEND_MSG_ACTIVATE' ), $name$sitename$siteURL."index.php?option=com_user&task=activate&activation=".$user->get('activation'), $siteURL$username$password);
            } else {
                
    $message sprintf JText::_'SEND_MSG' ), $name$sitename$siteURL);
            }
        
    //    $message = html_entity_decode($message, ENT_QUOTES);
    //zmiana
            
    if((version_comparephpversion(), '5.0' ) < 0)) {
               
    $message html_entity_decode($message);
         } else {
               
    $message html_entity_decode($messageENT_QUOTES);
         }
    //koniec zmiana

            //get all super administrator
            
    $query 'SELECT name, email, sendEmail' .
                    
    ' FROM #__users' .
                    
    ' WHERE LOWER( usertype ) = "super administrator"';
            
    $db->setQuery$query );
            
    $rows $db->loadObjectList();

            
    // Send email to user
            
    if ( ! $mailfrom  || ! $fromname ) {
                
    $fromname $rows[0]->name;
                
    $mailfrom $rows[0]->email;
            }

            
    JUtility::sendMail($mailfrom$fromname$email$subject$message);

            
    // Send notification to all administrators
            
    $subject2 sprintf JText::_'Account details for' ), $name$sitename);
            
    //$subject2 = html_entity_decode($subject2, ENT_QUOTES);
    //zmiana
            
    if((version_comparephpversion(), '5.0' ) < 0)) {
               
    $subject2 html_entity_decode($subject2);
         } else {
               
    $subject2 html_entity_decode($subject2ENT_QUOTES);
         }
    //koniec zmiana
            // get superadministrators id
            
    foreach ( $rows as $row )
            {
                if (
    $row->sendEmail)
                {
                    
    $message2 sprintf JText::_'SEND_MSG_ADMIN' ), $row->name$sitename$name$email$username);
                    
    //$message2 = html_entity_decode($message2, ENT_QUOTES);
    //zmiana
            
    if((version_comparephpversion(), '5.0' ) < 0)) {
               
    $message2 html_entity_decode($message2);
         } else {
               
    $message2 html_entity_decode($message2ENT_QUOTES);
         }
    //koniec zmiana
                    
    JUtility::sendMail($mailfrom$fromname$row->email$subject2$message2);
                }
            }
        } 

  5. #24
    Nowicjusz
    Dołączył
    25-11-2009
    Wpisy
    12
    Punkty
    10

    Domyślny

    Wielkie dzięki za rozgryzienie problemu, u mnie wystąpił problem z nazwą witryny.
    Pozdrawiam

  6. #25
    Wyga Jola awatar
    Dołączył
    08-01-2008
    Skąd
    Wrocław
    Wpisy
    3 239
    Punkty
    386

    Domyślny

    Jeśli nazwa witryny musi być długa, rozwiązaniem jest zmiana w pliku językowym:
    language/pl-P/pl-PL.com_user.ini linia 8 wpis
    Kod PHP:
    ACCOUNT DETAILS FOR=Szczegóły konta %s na %
    zmienić na:
    Kod PHP:
    ACCOUNT DETAILS FOR=Szczegóły konta %s na skrocona_nazwa 
    gdzie skrocona_nazwa to nazwa witryny (niezbyt długa), która będzie się pokazywała tylko w tytule emaila wysyłanego podczas rejestracji.
    Przy witrynach wielojęzycznych taką modyfikację należy dokonać w pozostałych plikach językowych.

Strona 3 z 3 PierwszyPierwszy 123

Reguły pisania

  • Nie możesz zakładać nowych tematów
  • Nie możesz dodawać wypowiedzi
  • Nie możesz dodawać załączników
  • Nie możesz poprawiać swoich postów
  •