Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    sfruttare il sistema di login del forum nel sito

    Salve ragazzi ho un problema.
    Io sul mio sito ho messo il forum phpbb.
    Vorrei sfruttare il suo sistema di login per il resto delle mie pagine.
    Come devo fare?

  2. #2
    non farlo!

  3. #3
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858

    Re: sfruttare il sistema di login del forum nel sito

    Originariamente inviato da carmineabomb
    Salve ragazzi ho un problema.
    Io sul mio sito ho messo il forum phpbb.
    Vorrei sfruttare il suo sistema di login per il resto delle mie pagine.
    Come devo fare?
    devi appoggiarti alla tabella contenente gli username e le password, controlla come sono memorizzati i campi...
    think simple think ringo

  4. #4
    Lo devo fare per forza perchè gli utenti una volta registrati devono accedere a tutte le risorse del sito.

  5. #5

    Re: Re: sfruttare il sistema di login del forum nel sito

    Originariamente inviato da marketto
    devi appoggiarti alla tabella contenente gli username e le password, controlla come sono memorizzati i campi...
    Lo potrei fare se conoscessi le variabili che il forum invia nei cookie, cioè nel cookie ho questo?

    variabile=a:2:{s:11:"autologinid";s:0:"";s:6:"user id";s:1:"2";}

    come faccio a crearmi questo valore?

  6. #6
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    think simple think ringo

  7. #7
    Se mi spieghi un pò come funziona questo script sicuramente riesco nella mia impresa.

    codice:
    <?php
    
    //
    // Allow people to reach login page if
    // board is shut down
    //
    define("IN_LOGIN", true);
    
    define('IN_PHPBB', true);
    $phpbb_root_path = './';
    include($phpbb_root_path . 'extension.inc');
    include($phpbb_root_path . 'common.'.$phpEx);
    
    //
    // Set page ID for session management
    //
    $userdata = session_pagestart($user_ip, PAGE_LOGIN);
    init_userprefs($userdata);
    //
    // End session management
    //
    
    // session id check
    if (!empty($HTTP_POST_VARS['sid']) || !empty($HTTP_GET_VARS['sid']))
    {
    	$sid = (!empty($HTTP_POST_VARS['sid'])) ? $HTTP_POST_VARS['sid'] : $HTTP_GET_VARS['sid'];
    }
    else
    {
    	$sid = '';
    }
    
    if( isset($HTTP_POST_VARS['login']) || isset($HTTP_GET_VARS['login']) || isset($HTTP_POST_VARS['logout']) || isset($HTTP_GET_VARS['logout']) )
    {
    	if( ( isset($HTTP_POST_VARS['login']) || isset($HTTP_GET_VARS['login']) ) && !$userdata['session_logged_in'] )
    	{
    		$username = isset($HTTP_POST_VARS['username']) ? trim(htmlspecialchars($HTTP_POST_VARS['username'])) : '';
    		$username = substr(str_replace("\\'", "'", $username), 0, 25);
    		$username = str_replace("'", "\\'", $username);
    		$password = isset($HTTP_POST_VARS['password']) ? $HTTP_POST_VARS['password'] : '';
    
    		$sql = "SELECT user_id, username, user_password, user_active, user_level
    			FROM " . USERS_TABLE . "
    			WHERE username = '" . str_replace("\\'", "''", $username) . "'";
    		if ( !($result = $db->sql_query($sql)) )
    		{
    			message_die(GENERAL_ERROR, 'Error in obtaining userdata', '', __LINE__, __FILE__, $sql);
    		}
    
    		if( $row = $db->sql_fetchrow($result) )
    		{
    			if( $row['user_level'] != ADMIN && $board_config['board_disable'] )
    			{
    				redirect(append_sid("index.$phpEx", true));
    			}
    			else
    			{
    				if( md5($password) == $row['user_password'] && $row['user_active'] )
    				{
    					$autologin = ( isset($HTTP_POST_VARS['autologin']) ) ? TRUE : 0;
    
    					$session_id = session_begin($row['user_id'], $user_ip, PAGE_INDEX, FALSE, $autologin);
    
    					if( $session_id )
    					{
    						$url = ( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&amp;', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : "index.$phpEx";
    						redirect(append_sid($url, true));
    					}
    					else
    					{
    						message_die(CRITICAL_ERROR, "Couldn't start session : login", "", __LINE__, __FILE__);
    					}
    				}
    				else
    				{
    					$redirect = ( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&amp;', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : '';
    					$redirect = str_replace('?', '&', $redirect);
    
    					$template->assign_vars(array(
    						'META' => "<meta http-equiv=\"refresh\" content=\"3;url=$redirect\">")
    					);
    
    					$message = $lang['Error_login'] . '
    
    ' . sprintf($lang['Click_return_login'], "<a href=\"login.$phpEx?redirect=$redirect\">", '</a>') . '
    
    ' .  sprintf($lang['Click_return_index'], '', '');
    
    					message_die(GENERAL_MESSAGE, $message);
    				}
    			}
    		}
    		else
    		{
    			$redirect = ( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&amp;', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : "";
    			$redirect = str_replace("?", "&", $redirect);
    
    			$template->assign_vars(array(
    				'META' => "<meta http-equiv=\"refresh\" content=\"3;url=login.$phpEx?redirect=$redirect\">")
    			);
    
    			$message = $lang['Error_login'] . '
    
    ' . sprintf($lang['Click_return_login'], "<a href=\"login.$phpEx?redirect=$redirect\">", '</a>') . '
    
    ' .  sprintf($lang['Click_return_index'], '', '');
    
    			message_die(GENERAL_MESSAGE, $message);
    		}
    	}
    	else if( ( isset($HTTP_GET_VARS['logout']) || isset($HTTP_POST_VARS['logout']) ) && $userdata['session_logged_in'] )
    	{
    		if( $userdata['session_logged_in'] )
    		{
    			session_end($userdata['session_id'], $userdata['user_id']);
    		}
    
    		if (!empty($HTTP_POST_VARS['redirect']) || !empty($HTTP_GET_VARS['redirect']))
    		{
    			$url = (!empty($HTTP_POST_VARS['redirect'])) ? htmlspecialchars($HTTP_POST_VARS['redirect']) : htmlspecialchars($HTTP_GET_VARS['redirect']);
    			$url = str_replace('&amp;', '&', $url);
    			redirect(append_sid($url, true));
    		}
    		else
    		{
    			redirect(append_sid("index.$phpEx", true));
    		}
    	}
    	else
    	{
    		$url = ( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&amp;', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : "index.$phpEx";
    		redirect(append_sid($url, true));
    	}
    }
    else
    {
    	//
    	// Do a full login page dohickey if
    	// user not already logged in
    	//
    	if( !$userdata['session_logged_in'] )
    	{
    		$page_title = $lang['Login'];
    		include($phpbb_root_path . 'includes/page_header.'.$phpEx);
    
    		$template->set_filenames(array(
    			'body' => 'login_body.tpl')
    		);
    
    		if( isset($HTTP_POST_VARS['redirect']) || isset($HTTP_GET_VARS['redirect']) )
    		{
    			$forward_to = $HTTP_SERVER_VARS['QUERY_STRING'];
    
    			if( preg_match("/^redirect=([a-z0-9\.#\/\?&=\+\-_]+)/si", $forward_to, $forward_matches) )
    			{
    				$forward_to = ( !empty($forward_matches[3]) ) ? $forward_matches[3] : $forward_matches[1];
    				$forward_match = explode('&', $forward_to);
    
    				if(count($forward_match) > 1)
    				{
    					$forward_page = '';
    
    					for($i = 1; $i < count($forward_match); $i++)
    					{
    						if( !ereg("sid=", $forward_match[$i]) )
    						{
    							if( $forward_page != '' )
    							{
    								$forward_page .= '&';
    							}
    							$forward_page .= $forward_match[$i];
    						}
    					}
    					$forward_page = $forward_match[0] . '?' . $forward_page;
    				}
    				else
    				{
    					$forward_page = $forward_match[0];
    				}
    			}
    		}
    		else
    		{
    			$forward_page = '';
    		}
    
    		$username = ( $userdata['user_id'] != ANONYMOUS ) ? $userdata['username'] : '';
    
    		$s_hidden_fields = '<input type="hidden" name="redirect" value="' . $forward_page . '" />';
    
    		make_jumpbox('viewforum.'.$phpEx, $forum_id);
    		$template->assign_vars(array(
    			'USERNAME' => $username,
    
    			'L_ENTER_PASSWORD' => $lang['Enter_password'],
    			'L_SEND_PASSWORD' => $lang['Forgotten_password'],
    
    			'U_SEND_PASSWORD' => append_sid("profile.$phpEx?mode=sendpassword"),
    
    			'S_HIDDEN_FIELDS' => $s_hidden_fields)
    		);
    
    		$template->pparse('body');
    
    		include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
    	}
    	else
    	{
    		redirect(append_sid("index.$phpEx", true));
    	}
    
    }
    
    ?>

  8. #8
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    secondo te una persona normale legge tutto questo codice??
    think simple think ringo

  9. #9
    + che altro ci sono dei file inclusi metti pure quelli in caso qualche pazzoide voglia leggere il tutto.

  10. #10
    si avete ragione a me basta che mi dite a che serve questo

    codice:
    isset($HTTP_POST_VARS['password']) ? $HTTP_POST_VARS['password'] : '';
    isset() lo so a che serve il fatto è che non so a che serve il punto interrogativo e i 2 punti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.