Naslov: Jedinstven login za phpbb forum i moj sajt! Autor: Anonymous - 02.07.2006., 20:47 Pozdrav!
Zelim integrisati pbpbb forum sa portalom (powerportal 1.3b) i sve je to ok osim jednog, naime nikako ne mogu da napravim jedinstven login za obje aplikacije (tj kad se neko loguje na portal da bude automatski logovan i na forum).. Kad je u pitanju registracija clanova to sam rijesio ali ostaje ovaj dio sa logovanjem.. Klasa koja provjerava clanove i loguje ih na portalu izgleda ovako: Kod: class user_authorization { function set_username($user) { $this->username = $user; $this->username = trim($this->username); $this->username = str_replace(' ', '', $this->username); } function set_password($pass) { $this->password = $pass; } function set_login_cookies($remember) { if($remember) { setcookie('username', $this->username, time()+60*60*24*30, '/'); setcookie('password', $this->password, time()+60*60*24*30, '/'); } else { setcookie('username', $this->username, -1, '/'); setcookie('password', $this->password, -1, '/'); } } function validate() { global $db; if(!empty($this->username) && !empty($this->password)) { $user_row = $db->fetch_row("SELECT * FROM users WHERE username = '$this->username' AND password = '$this->password'"); $username_db = $user_row['username']; $password_db = $user_row['password']; if(strcasecmp($this->username, $username_db) == 0 && strcasecmp($this->password, $password_db) == 0 && !empty($this->username) && !empty($this->password)) { $this->user_id = $user_row['id']; $this->logged_in = 1; $this->username_format = $user_row['username_format']; $row_super_admin = $db->fetch_row("SELECT * FROM groups_users WHERE name = 'Super Administrator' AND user_id = '$this->user_id'"); if(empty($row_super_admin['0'])) { $this->super_admin = 0; $result_admin_mods = $db->query("SELECT * FROM modules_admin ORDER BY module ASC"); while($row_admin_mods = $db->fetch_array($result_admin_mods)) { $groups_admin = $db->fetch_row("SELECT groups FROM modules_admin WHERE id = '" . $row_admin_mods['id'] . "'"); $groups_admin = $groups_admin['0']; $groups_admin_array = explode(':', $groups_admin); $x = 0; while(!empty($groups_admin_array[$x])) { $user_groups = $db->fetch_row("SELECT * FROM users WHERE id = '$this->user_id'"); $user_groups = $user_groups['groups']; $user_groups_array = explode(':', $user_groups); if(in_array($groups_admin_array[$x], $user_groups_array)) { $this->admin = 1; } $x++; } } if(empty($this->admin)) { $this->admin = 0; } } else { $this->admin = 1; $this->super_admin = 1; } return 1; } else { $this->super_admin = 0; $this->logged_in = 0; $this->user_id = '1'; $this->admin = 0; return 0; } } else { $this->super_admin = 0; $this->logged_in = 0; $this->user_id = '1'; $this->admin = 0; return 0; } } function validation_mode() { global $user, $pass, $remember, $HTTP_COOKIE_VARS; $pass = md5($pass); if(!empty($user) && !empty($pass)) { $this->set_username($user); $this->set_password($pass); if($this->validate()) { $this->set_login_cookies($remember); } } else { $this->set_username($HTTP_COOKIE_VARS['username']); $this->set_password($HTTP_COOKIE_VARS['password']); $this->validate(); } } } $user_authorization = new user_authorization; $user_authorization->validation_mode(); $user_id = $user_authorization->user_id; $admin = $user_authorization->admin; $super_admin = $user_authorization->super_admin; $username = $user_authorization->username; $username_format = $user_authorization->username_format; $logged_in = $user_authorization->logged_in; Postoji li mogucnost da se unutar ove klase integrise i login za forum ili postoji neki drugi laksi nacin? Unaprijed hvala! Naslov: Jedinstven login za phpbb forum i moj sajt! Autor: c0dr3x - 03.07.2006., 11:18 Kod: function set_login_cookies($remember) { if($remember) { setcookie('username', $this->username, time()+60*60*24*30, '/'); setcookie('password', $this->password, time()+60*60*24*30, '/'); } else { setcookie('username', $this->username, -1, '/'); setcookie('password', $this->password, -1, '/'); } } vidis da ti se koriste cookiji, znaci kad logiras svoje korisnike na portalu jednostavno postavi odmah i ove cookije pozdrav Naslov: Jedinstven login za phpbb forum i moj sajt! Autor: Anonymous - 03.07.2006., 12:58 Hvala na odgovoru ali ne razumijem bas najbolje... Gdje da postavim cookije, na forum? Kako? Mozes li mi to malo pribliziti, molim te!
Hvala jos jednom! Naslov: Jedinstven login za phpbb forum i moj sajt! Autor: c0dr3x - 03.07.2006., 14:52 cookie - klikni me ovdje (http://hr.php.net/setcookie)
daklen tu si malo prostudiraj kako se postavljaju cookie-ji, ako ti nakon toga nebu bilo jasnije, pitaj si prijatelja Google (http://www.google.com). U teoriji bi trebalo ovako to ispasti: - nakon sto ti se korisnik ulogira na portal pokreces neku skriptu za provjeru podataka - e sad u toj skripti nadobacis kod tipa: Kod: setcookie ( "username" , 'moj_username', time+3600, "www.moja-domena.com"); setcookie ( "password" , 'dekodirani_pass', time+3600, "www.moja-domena.com"); i to bi onda trebalo funcionirati, eto nadam se da ces se uspjet snaci :wink: pozdrav :wink: p.s. ne zaboravi da podaci o korisnicima , ako su u odvojenim tablicama, moraju odgovarati podacima iz tablice koju koristi forum
php.hr | Powered by SMF 1.1.13. © 2005, Simple Machines LLC. All Rights Reserved.
|