DJkikisa 24 #1 Posted February 3, 2019 Report post IPB 4. izmanto jauku funkciju ar kuras palīdzību varam izvilkt ārpus IPB foruma vai lietotājs ir ienācis foruma profilā. Viņu izmantot ir ļoti elementāri, viss kas jāizdara ir : <?php /* Norādam ceļu uz galvano foruma mapi*/ require $_SERVER['DOCUMENT_ROOT'].'/init.php'; /* Uzsākam sesiju lai pārbaudītu, kas ir ienācis profilā */ \IPS\Session\Front::i(); if(\IPS\Member::loggedIn()->member_group_id == 2){ echo 'Tu esi viesis'; }else{ ?> <img src="<?php echo \IPS\Member::load(\IPS\Member::loggedIn()->member_id )->get_photo();?>"> <p>Profila vārds : <?php echo \IPS\Member::loggedIn()->name;?> <p>Profila vārds SEO vārds: <?php echo \IPS\Member::loggedIn()->members_seo_name;?> <p>Profila lietotāja id: <?php echo \IPS\Member::loggedIn()->member_id;?> <p>Profila lietotāja grupas id: <?php echo \IPS\Member::loggedIn()->member_group_id;?> <p>Profila lietotāja warn līmenis: <?php echo \IPS\Member::loggedIn()->warn_level;?> <p>Profila lietotāja grupas vizualizāciju: <?php echo \IPS\Member::loggedIn()->group['prefix'];?> Grupa <?php echo \IPS\Member::loggedIn()->group['suffix'];?> <p><?php /* Noskaidrojam vai lietotajs ir Administrators */ if(\IPS\Member::loggedIn()->isAdmin()){ echo 'Tu esi administrātors'; }else{ echo 'Tu neesi administrators'; }?> <p><?php /* Noskaidrojam vai lietotajs ir Moderātors */ if(\IPS\Member::loggedIn()->modPermission()){ echo 'Tu esi Mods'; }else{ echo 'Tu neesi Mods'; }?> </p> <?php } ?> Cik testēju ir iespējams izvilkt jebko no: core_members db tabulas.Vēl ja nav ir jāizveido constants.php fails iekš galvenās foruma mapes un jāpievieno:(Izcelts dēļ analfabētiem) define( 'COOKIE_PATH', '/' ); Lai šis strādātu pa visu mājaslapu ārpus foruma mapes. Demo ar izvadīto informāciju: https://wam.lv/skripti/ipbsso.php Uzlabotā versija: https://wam.lv/topic/74-izmantojam-ipb-single-sign-onsso-un-izveidojam-lietotāja-paneli-mājaslapā/?tab=comments#comment-360 1 Share this post Link to post Share on other sites
Pantēra 4 #2 Posted February 3, 2019 (edited) Report post Vēl ja nav ir jāizveido constants.php fails iekš galvenās foruma mapes un jāpievieno:(Izcelts dēļ analfabētiem) define( 'COOKIE_PATH', '/' ); kad šis tiek izpildīts, viss forums aiziet pa dirsu.. 500 erroru uzmet.. kā fix? uz sākumlapu tiek iznest ar <?php include 'profile.php'; ?> un tā vieta lai izvilktu profilu izveilk ka guest.. Bet atverot ar link strādā.. Edited February 3, 2019 by Pantēra 1 Share this post Link to post Share on other sites
DJkikisa Autors 24 #3 Posted February 3, 2019 Report post 25 minutes ago, Pantēra said: Vēl ja nav ir jāizveido constants.php fails iekš galvenās foruma mapes un jāpievieno:(Izcelts dēļ analfabētiem) define( 'COOKIE_PATH', '/' ); kad šis tiek izpildīts, viss forums aiziet pa dirsu.. 500 erroru uzmet.. kā fix? uz sākumlapu tiek iznest ar <?php include 'profile.php'; ?> un tā vieta lai izvilktu profilu izveilk ka guest.. Bet atverot ar link strādā.. Es ceru ka tu , ja tas ir jauns php fails neaizmirsi par <?php sākumā. https://invisioncommunity.com/4guides/advanced-options/configuration-options/using-constantsphp-r25/ Share this post Link to post Share on other sites
Pantēra 4 #4 Posted February 3, 2019 Report post 13 minutes ago, DJkikisa said: Es ceru tu , ja tas ir jauns php fails neaizmirsi par <?php sākumā. nope.. Viss bija pareizi, arī ceļš un init.php Nezinu kapēc tā.. 1 Share this post Link to post Share on other sites
DJkikisa Autors 24 #5 Posted February 3, 2019 Report post 4 minutes ago, Pantēra said: nope.. Viss bija pareizi, arī ceļš un init.php Nezinu kapēc tā.. Pamēģini init.php failu ielādēt index.php failā nevis tajā, kuru include veic. Share this post Link to post Share on other sites
Pantēra 4 #6 Posted February 3, 2019 (edited) Report post Kur index.php man viņu likt? require '../../forum/init.php'; pluss.. Nevar būt saistīts ar config.php, kur : require_once('forum/conf_global.php'); kad ielieku constants.php foruma direktorijā, šādi notiek: http://prntscr.com/mg6q0m izvadu uz sākumlapu: div class="center-panelbox"> <?php require 'application/includes/profile.php'; ?> </div> constants.php profile.php Edited February 3, 2019 by Pantēra 1 Share this post Link to post Share on other sites
DJkikisa Autors 24 #7 Posted February 3, 2019 Report post Nu index, tad arī liec: require 'forum/init.php'; un nevajadzētu būt, p.s ieliekot šo init nevajadzēs vairs to require_once('forum/conf_global.php');, tākā ar init vari izvilkt visus tos pašus datus tik šādi: $db = \IPS\Settings::i()->sql_database; $db_user =\IPS\Settings::i()->sql_user; $db_pass =\IPS\Settings::i()->sql_pass; $db_prefix = \IPS\Settings::i()->sql_tbl_prefix; Un constants.php nevajag noslēdzošo php tag. Pasties error logs , kāpēc tev forums nogļuko dēļ viņa, ganjau tur arī atradīsi atbildi. Vēl vari arī profile.php failā aizstāt: require '../../forum/init.php'; ar : require $_SERVER['DOCUMENT_ROOT'].'/forum/init.php'; Share this post Link to post Share on other sites
frosts 0 #8 Posted June 4, 2019 Report post Sveiks, zinu kad tēma ir veca, bet man ir mazins jautājums. <p><?php echo \IPS\Member::loggedIN()->groupName; ?></p> man izvada 9069d34ad217af2adb462b69812d9178 Kā es varu pievienot valodu, lai viņs iztulko grupu? Share this post Link to post Share on other sites
DJkikisa Autors 24 #9 Posted June 4, 2019 Report post Rīt naktī pastīšos. Iespējams būs jātaisa ekstra DB querty, lai dabūtu name. Pagaidu risinājums ( Kad būs vairāk laika pastīšos moš kādu labāku): <?php /* Norādam ceļu uz galvano foruma mapi*/ require '../init.php'; /* Uzsākam sesiju lai pārbaudītu, kas ir ienācis profilā */ \IPS\Session\Front::i(); if(\IPS\Member::loggedIn()->member_group_id == 2){ echo 'Tu esi viesis'; }else{ $group_name = 'core_group_'.\IPS\Member::loggedIn()->member_group_id; $get_group_name = \IPS\Db::i()->select( '*', 'core_sys_lang_words', [ 'word_key=?', $group_name ] )->first(); ?> <img src="<?php echo \IPS\Member::load(\IPS\Member::loggedIn()->member_id )->get_photo();?>"> <p>Profila vārds : <?php echo \IPS\Member::loggedIn()->name;?> <p>Profila vārds SEO vārds: <?php echo \IPS\Member::loggedIn()->members_seo_name;?> <p>Profila lietotāja id: <?php echo \IPS\Member::loggedIn()->member_id;?> <p>Profila lietotāja grupas id: <?php echo \IPS\Member::loggedIn()->member_group_id;?> <p>Profila lietotāja warn līmenis: <?php echo \IPS\Member::loggedIn()->warn_level;?> <p>Profila lietotāja grupas vizualizāciju: <?php echo \IPS\Member::loggedIn()->group['prefix'];?> <?php echo $get_group_name['word_default'];?> <?php echo \IPS\Member::loggedIn()->group['suffix'];?> <p><?php /* Noskaidrojam vai lietotajs ir Administrators*/ if(\IPS\Member::loggedIn()->isAdmin()){ echo 'Tu esi administrātors'; }else{ echo 'Tu neesi administrators'; }?> <p><?php /* Noskaidrojam vai lietotajs ir Moderātors */ if(\IPS\Member::loggedIn()->modPermission()){ echo 'Tu esi Mods'; }else{ echo 'Tu neesi Mods'; }?> </p> <?php } ?> 1 Share this post Link to post Share on other sites
DJkikisa Autors 24 #10 Posted April 15, 2020 Report post Pievienots logout: <?php /* Norādam ceļu uz galvano foruma mapi*/ require '../init.php'; /* Uzsākam sesiju lai pārbaudītu, kas ir ienācis profilā */ \IPS\Session\Front::i(); if(\IPS\Member::loggedIn()->member_group_id == 2){ echo 'Tu esi viesis'; }else{ $group_name = 'core_group_'.\IPS\Member::loggedIn()->member_group_id; $get_group_name = \IPS\Db::i()->select( '*', 'core_sys_lang_words', [ 'word_key=?', $group_name ] )->first(); $logout = \IPS\Http\Url::internal( "logout" )->csrf(); ?> <img src="<?php echo \IPS\Member::load(\IPS\Member::loggedIn()->member_id )->get_photo();?>"> <p>Profila vārds : <?php echo \IPS\Member::loggedIn()->name;?> <p>Profila vārds SEO vārds: <?php echo \IPS\Member::loggedIn()->members_seo_name;?> <p>Profila lietotāja id: <?php echo \IPS\Member::loggedIn()->member_id;?> <p>Profila lietotāja grupas id: <?php echo \IPS\Member::loggedIn()->member_group_id;?> <p>Profila lietotāja warn līmenis: <?php echo \IPS\Member::loggedIn()->warn_level;?> <p>Profila lietotāja grupas vizualizāciju: <?php echo \IPS\Member::loggedIn()->group['prefix'];?> <?php echo $get_group_name['word_default'];?> <?php echo \IPS\Member::loggedIn()->group['suffix'];?> <p><?php /* Noskaidrojam vai lietotajs ir Administrators*/ if(\IPS\Member::loggedIn()->isAdmin()){ echo 'Tu esi administrātors'; }else{ echo 'Tu neesi administrators'; }?> <p><?php /* Noskaidrojam vai lietotajs ir Moderātors */ if(\IPS\Member::loggedIn()->modPermission()){ echo 'Tu esi Mods'; }else{ echo 'Tu neesi Mods'; }?> <p><a href="<?php echo $logout;?>">Logout</a> </p> <?php } ?> Share this post Link to post Share on other sites