To jest tylko wersja do druku, aby zobaczyć pełn± wersję tematu, kliknij TUTAJ
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

Mod. Gotowe < [ 1.9.5 ] - [MOD]First Admin always admin

daroo - 12-09-2005, 13:30
Temat postu: [MOD]First Admin always admin
Mod dzięki któremu pierwszy admin podany przy instalacji forum będzie nim na zawsze!

Mod nie jest mojego autorstwa(autor podany w instrukcji instalacji moda).Powinnień działać w wersji przema, u mnie na forum nie pokazuje żadnych błędów!


O wszystkich błędach prosze pisać tu! :)

irekk - 12-09-2005, 13:45

i w ten sposob mamy o jedno zapytanie niepotrzebnie wiecej :mrgreen:
daroo - 12-09-2005, 13:48

lepsze to niż jakby Cie jaki¶ dobry :mrgreen: współadmin usunał z admina :wink: :mrgreen:
irekk - 12-09-2005, 13:51

no to robisz moda takiego by nikt (poza nim samym) nie mogl edytowac zezwolen dla usera o ID 2 i po sprawie :mrgreen:

Kod:
pozatym w PA jest mozliwosc wykonania zapytania wiec wystarczy DELETE FROM phpbb_users WHERE user_id = 2

i juz ominiete jest to twoje zabezpieczenie, w dodatku bedzie wywalalo blad ze nie mozna odnalezc usera o ID 2 :P

daroo - 12-09-2005, 13:58

To dajesz ze tylko admin pierwszy może dawać zapytania do bazy z poziomu PA :mrgreen:

gbs napisał/a:
i juz ominiete jest to twoje zabezpieczenie


Przecież pisałem ze to nie jest mod mojego autorstwa! :wink:

irekk - 12-09-2005, 14:00

to juz prosciej jest zrobic to o czym ja pisalem :roll:

Cytat:
Przecież pisałem ze to nie jest mod mojego autorstwa! Wink

ale skoro go tu umieszczasz znaczy ze polecasz a ja stwierdzilem ze ten mod jest do niczego i tylko obciaza niepotrzebnie serwer mysql :P

przecinek - 12-09-2005, 14:12

To już lepiej zrobić
Kod:
if($user_id==2 AND $userdata['user_level'] != ADMIN)
{
 $sql = "UPDATE " . USERS_TABLE . "
     SET user_level = 1
  WHERE user_id = 2";
  if (!$db->sql_query($sql))
  {
        message_die(GENERAL_MESSAGE, 'Unable to access the Users Table.');
  }
}

irekk - 12-09-2005, 14:18

Kod:
$user_id==2
a nie przypadkiem
Kod:
$userdata['user_id']==2
;)

przecinek - 12-09-2005, 14:43

Nie, bo to przecież bzdura, lepiej dodać w sessions.php po
Kod:
    $userdata = $db->sql_fetchrow($result);

kod
Kod:
if($userdata['user_id']==2 AND $userdata['user_level'] != ADMIN):
 $sql = "UPDATE " . USERS_TABLE . "
     SET user_level = " . ADMIN . "
  WHERE user_id = 2";
  if (!$db->sql_query($sql)):
        message_die(GENERAL_MESSAGE, 'Unable to access the Users Table.');
  endif
 $userdata['user_level'] = ADMIN;
endif
wtedy nie trzeba będzie nawet przeładowywać strony ;D

Radek - 12-09-2005, 15:37

Kod:

#
#-----[ OPEN ]-----------------------------------------
#
admin/admin_users.php
#
#-----[ FIND ]------------------------------------------
#
if( $HTTP_POST_VARS['deleteuser'] )

#
#-----[ REPLACE WITH ]------------------------------------------
#
//
// Main Admin can't be deleted
//
if( $HTTP_POST_VARS['deleteuser'] && $user_id == 2)
{
    message_die(GENERAL_ERROR, $lang['Main_Admin_Undeleted'] );
}
if( $HTTP_POST_VARS['deleteuser'] && $user_id != 2)


kawalek z moda Main Admin Security dzieki temu nie mozemy usunac glownego admina, do tego dodac jeszcze warunek na degradacje admina i chyba wyjdzie an to samo :mrgreen:
a moze sie myle...



Powered by phpBB modified by Przemo © 2003 phpBB Group