| 
 
  
    | Poprzedni temat :: Następny temat |  
    | 
        
          | sebonpl Wysłany: Nie 19 Lis, 2006 |  |  
          | 
 |  
          | ############################################################## ## Nazwa Modyfikacji: AJAX Weryfikacja nazwy u?ytkownika
 ## Autor Modyfikacji: adrien < webmaster@pc-facile.com > http://www.pc-facile.com
 ## Dostosowa? dla phpBB by Przemo: SeBoN < sebonpl@gmail.com > http://www.vista.skazzza.pl
 ## MOD Description: Modyfikacja sprawdza dzi?ki AJAX dost?pno?? nazwy u?ytkownika podczas rejestracji.
 ## Wersja Modyfikacji: 0.9.1
 ##
 ## Trudno?? Wgrania: ?atwe
 ## Czas instalacj: 10 minut
 ## Pliki do edycji: profile.php,
 ##                       includes/usercp_register.php,
 ##                       lang_main.php
 ##                       templates/SubSilver/profile_add_body.tpl
 ##
 ## pliki do wgrania: class.sajax.php
 ##############################################################
 
 
 
 
 
 #
 #-----[ Kopiuj ]------------------------------------------
 #
 # Plik znajduje si? w za??czniku
 #
 copy class.sajax.php to includes/class.sajax.php
 
 #
 #-----[ Otw?rz ]------------------------------------------
 #
 profile.php
 
 #
 #-----[ Znajd? ]------------------------------------------
 #
 PHP Code:<?php
 
 include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
 
 ?>
 
 #
 #-----[ Po tym dodaj ]------------------------------------------
 #
 PHP Code:<?php
 
 include($phpbb_root_path . 'includes/class.sajax.'.$phpEx);
sajax_init(); // Intialize Sajax
sajax_export("check_user_exist"); // Register the function
sajax_handle_client_request(); // Serve client instances
 
 ?>
 
 #
 #-----[ Znajd? ]------------------------------------------
 #
 PHP Code:<?php
 
 redirect(append_sid("index.$phpEx", true));
 
 ?>
 
 #
 #-----[ Po tym dodaj ]------------------------------------------
 #
 PHP Code:<?php
 
 function check_user_exist ($username)
{
    global $db;
    // Make a list of words to postfix on username for suggest
    $suggest = array('007', '1', 'x', 'xxx', '2000', '2007');
    $username = mysql_escape_string ($username);
    $sql = "SELECT username FROM " . USERS_TABLE . " WHERE username = '" . $username . "'";
    if (!($result = $db->sql_query($sql)))
    {
        message_die(GENERAL_ERROR, 'Could not obtain confirmation code', __LINE__, __FILE__, $sql);
    }
    $list = array();
    while ( $row = $db->sql_fetchrow($result) )
    {
        $list[] = $row;
    }
    $db->sql_freeresult($result);
    if ( count ($list) > 0)
    {
        // Username not available
        $avail[0] = 'no';
        $i = 2;
        // Loop through suggested ones checking them
        foreach ($suggest AS $postfix)
        {
            $sql = "SELECT username FROM " . USERS_TABLE . " WHERE username = '" . $username . $postfix . "'";
            if (!($result_2 = $db->sql_query($sql)))
            {
                message_die(GENERAL_ERROR, 'Could not obtain confirmation code', __LINE__, __FILE__, $sql);
            }
            $user = $db->sql_fetchrow($result_2);
            if ( empty ($user) )
            {
                $avail[$i] = $username . $postfix;
                $i++;
            }
        }
        $avail[1] = $i - 1;
        return ($avail);
    }
    // Username is available
    return array('yes');
}
 
 ?>
 
 #
 #-----[ Znajd? ]------------------------------------------
 #
 includes/usercp_register.php
 
 #
 #-----[ Po tym dodaj ]------------------------------------------
 #
 PHP Code:<?php
 
 'S_FORM_ENCTYPE' => $form_enctype,
        'S_PROFILE_ACTION' => append_sid("profile.$phpEx"))
    );
 
 ?>
 
 #
 #-----[ Po tym dodaj ]------------------------------------------
 #
 PHP Code:<?php
 
 $template->assign_vars(array(
        'L_USERNAME_AVAILABLE' => $lang['Username_available'],
        'L_VERIFY_USERNAME' => $lang['Verify_username'],
        'TRY_ONE_OF_THESE' => $lang['Try_one_these'],
        'SAJAX_JAVASCRIPT' => sajax_get_javascript()
    ));
 
 ?>
 
 #
 #-----[ Otw?rz ]------------------------------------------
 #
 lang_main.php
 
 #
 #-----[ Znajd? ]------------------------------------------
 #
 PHP Code:<?php
 
 $lang['Empty_subject_email'] = 'Musisz określi? temat dla email\'a';
$lang['Empty_message_email'] = 'Musisz wpisa? wiadomoś? do wys?ania';
 
 ?>
 
 #
 #-----[ Po tym dodaj ]------------------------------------------
 #
 PHP Code:<?php
 
 $lang['Verify_username'] = "Sprawdz Dost?pnoś?";
$lang['Username_available'] = "Nazwa u?ytkownika dost?pna.";
$lang['Try_one_these'] = "Nazwa u?ytkownika niedost?pna.Wybierz z listy lub wymyśl nowy.";
 
 ?>
 
 #
 #-----[ Otw?rz ]------------------------------------------
 #
 templates/SubSilver/profile_add_body.tpl
 
 #
 #-----[ Znajd? ]------------------------------------------
 #
 <form action="{S_PROFILE_ACTION}" {S_FORM_ENCTYPE} method="post">
 
 #
 #-----[ Po tym dodaj ]------------------------------------------
 #
 PHP Code:<?php
 
 <script type="text/javascript">
{SAJAX_JAVASCRIPT}
function check_handle(result) {
    if(result[0] == 'yes') {
        document.getElementById('not_available').style.display = 'none';
        document.getElementById('available').style.display = 'block';
    }
    else {
        document.getElementById('available').style.display = 'none';
        document.getElementById('not_available').style.display = 'block';
        var str = '{TRY_ONE_OF_THESE} <br />';
        for(i = 1; i < result[1]; i++) {
            str += "<input type=\"radio\" name=\"try\" onclick=\"switch_username('"+result[i+1]+"')\"/>" + result[i+1] + "<br />";
        }
        document.getElementById('not_available').innerHTML = str;
    }
}
function check_user_exist() {
    var username = document.getElementById('username').value;
    x_check_user_exist(username, check_handle);
}
function switch_username(username) {
    document.getElementById('username').value = username;
}
</script>
<style type="text/css">
#available {
    display: none;
    color: green;
}
#not_available {
    display: none;
    color: red;
}
</style>
 
 ?>
 
 #
 #-----[ Znajd? ]------------------------------------------
 #
 PHP Code:<?php
 
 <tr> 
        <td class="row1" width="38%"><span class="gen">{L_USERNAME}: *</span></td>
        <td class="row2"><input type="text" class="post" onFocus="Active(this)" onBlur="NotActive(this)" style="width:200px" name="username" size="25" maxlength="15" value="{USERNAME}" /></td>
    </tr>
 
 ?>
 
 #
 #-----[ Zamie? na ]------------------------------------------
 #
 PHP Code:<?php
 
 <tr> 
        <td class="row1" width="38%" valign="top"><span class="gen">{L_USERNAME}: *</span></td>
        <td class="row2"><input type="text" class="post" style="width:200px" name="username" size="25" maxlength="25" value="{USERNAME}" id="username" />  <input type="button" name="check" value="{L_VERIFY_USERNAME}" onclick="check_user_exist(); return false;">
        <span class="gen"><div id="available">{L_USERNAME_AVAILABLE}</div></span>
        <span class="gen"><div id="not_available"></div></span></td>
    </tr>
 
 ?>
 
 #
 #-----[ Zapisz wszystko ]------------------------------------------
 #
 # EoM
 |  |  
    | 
        
          | ispep Wysłany: Nie 19 Lis, 2006 |  |  
          | 
 |  
          | bardzo fajna modifikacja |  |  
    | 
        
          | sebonpl Wysłany: Nie 19 Lis, 2006 |  |  
          | 
 |  
          | Jak by nie by?a fajna bym jej nie doda?. |  |  
    | 
        
          | hannibal Wysłany: Wto 21 Lis, 2006 |  |  
          | 
 |  
          | Du?y plus dla kolegi za t? modyfikacje brakowa?o tego bardzo! |  |  
    | 
        
          | Shery Wysłany: Pon 27 Lis, 2006 |  |  
          | 
 |  
          | hmmm a ja jak zwykle pytam czy obci?za ? |  |  
    | 
        
          | KnofeL Wysłany: Pon 27 Lis, 2006 |  |  
          | 
 |  
          | Z tego co wiem to Ajax zosta? stworzony ?eby zmniejszy? szybko?? ??dowania si? strony i obci?zenie serwera, wiec chyba nie. |  |  
    | 
        
          | sonik87 Wysłany: Nie 15 Lip, 2007 |  |  
          | 
 |  
          | Modyfikacja ciekawa i mo?e by? przydatna jednak u mnie po instalacji wyst?puj? k?opoty ... wykonywa?em j? 3 razy bo do trzech razy sztuka no ale zawsze ten sam b??d ... :( niestety tak dobrze jak niekt?rzy u?ytkownicy tego forum nie jestem obeznany dlatego prosz? o pomoc ... 
 
 
 Mo?e kto? b?dzie zna? przyczyn? tego b??du ? z g?ry za pomoc i zainteresowanie bardzo dzi?kuj
 |  |  
    | 
        
          | KnofeL Wysłany: Nie 15 Lip, 2007 |  |  
          | 
 |  
          | Gdzi?s brakuje ; musia?e? cos gdzie? wklei? ?le |  |  
    | 
        
          | sonik87 Wysłany: Pon 16 Lip, 2007 |  |  
          | 
 |  
          | nie raczej nie pr?bowa?em 3 razy wcze?niej a teraz 4 raz od podstawowych plik?w ... mo?e to nie pasuje po prostu do mojego stylu albo co? ? a mo?e wykona?em ?le t? instrukcj? 
 Kod#
 #-----[ Znajd? ]------------------------------------------
 #
 includes/usercp_register.php
 
 #
 #-----[ Po tym dodaj ]------------------------------------------
 #
 PHP Code:
 <?php
 
 'S_FORM_ENCTYPE' => $form_enctype,
 'S_PROFILE_ACTION' => append_sid("profile.$phpEx"))
 );
 
 ?>
 
 
 #
 #-----[ Po tym dodaj ]------------------------------------------
 #
 PHP Code:
 <?php
 
 $template->assign_vars(array(
 'L_USERNAME_AVAILABLE' => $lang['Username_available'],
 'L_VERIFY_USERNAME' => $lang['Verify_username'],
 'TRY_ONE_OF_THESE' => $lang['Try_one_these'],
 'SAJAX_JAVASCRIPT' => sajax_get_javascript()
 ));
 
 ?>
 
 
 #
 
 ja robi?em to tak bo my?la?em ?e w tej instrukcji jest b??d
 Otw?r -> includes/usercp_register.php (a nie znajd?)
 znajd? -> (po tym dodaj)
 po tym dodaj - > (po tym dodaj)
 
 najwy?ej tej modyfikacji nie zainstaluje ...
 |  |  
    | 
        
          | Przemek211 Wysłany: Pon 16 Lip, 2007 |  |  
          | 
 |  
          | sonik87 napisał/aja robi?em to tak bo my?la?em ?e w tej instrukcji jest b??d Otw?r -> includes/usercp_register.php (a nie znajd?)
 znajd? -> (po tym dodaj)
 po tym dodaj - > (po tym dodaj)
 To raczej b??d, ale mo?e to dlatego, ?e ten g?upi tag PHP dodaje zawsze <?php i ?>
 Mo?e tego nie usun??e?.
 |  |  
    | 
        
          | sonik87 Wysłany: Pon 16 Lip, 2007 |  |  
          | 
 |  
          | niee kopiowa?em bez tych tag?w ... teoretycznie wszystko dobrze jest ... nie wiem co mo?e by? :( niestety :( najwy?ej nie wstawie modyfikacje :P 
 no i rozwi?zanie b??du si? znalaz?o ... modyfikacja dzia?a poprawnie :] problemem modyfikacji na moim forum by? serwer yoyo :| nie wiadomo z jakiego powodu ta modyfikacja na tamtym serwerze nie dzia?a?a ... po przeniesieniu na inny lepszy hosting modyfikacja dzia?a bez problem?w :]
 |  |  
    | 
        
          | Czajo Wysłany: Czw 26 Lip, 2007 |  |  
          | 
 |  
          | wgra?em wszystko wed?ug instrukcji, a mod nie daje znaku ?ycia :( przy rejestracji nic si? nie dzieje
 |  |  
    |  |  To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
 
 |