Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 General Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 08-03-2005, 08:03 PM
10sion 10sion is offline
 
Join Date: Jul 2005
Posts: 38
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Is this possible?

My site is on endless-anime.com and my forums is on ea-forums.com. I want my site to kinda be intergrated into the forums. But I need to tell if the users logged in, I already have the forums memberlist on my site but now I need to be able to be where you log in the forums it sets a cookie on both ea-forums.com (which it does) and endless-anime.com. Im not sure if setcookie can even do this, but I want to try, anyways I finally found vbsetcookie function and made some edits, although they dont seem to be setting the cookies on endless-anime.com anyone help?

Code:
// ###################### Start vbsetcookie #######################
function vbsetcookie($name, $value = '', $permanent = 1)
{
	global $vboptions, $_SERVER;

	if ($permanent)
	{
		$expire = TIMENOW + 60 * 60 * 24 * 365;
	}
	else
	{
		$expire = 0;
	}

	if ($_SERVER['SERVER_PORT'] == '443')
	{
		// we're using SSL
		$secure = 1;
	}
	else
	{
		$secure = 0;
	}

	$name = COOKIE_PREFIX . $name;

	$filename = 'N/A';
	$linenum = 0;

	if (!vbheaders_sent($filename, $linenum))
	{ // consider showing an error message if there not sent using above variables?
		if ($value == '' AND strlen($vboptions['cookiepath']) > 1 AND strpos($vboptions['cookiepath'], '/') !== false)
		{
			// this will attempt to unset the cookie at each directory up the path.
			// ie, cookiepath = /test/vb3/. These will be unset: /, /test, /test/, /test/vb3, /test/vb3/
			// This should hopefully prevent cookie conflicts when the cookie path is changed.
			$dirarray = explode('/', preg_replace('#/+$#', '', $vboptions['cookiepath']));
			$alldirs = '';
			foreach ($dirarray AS $thisdir)
			{
				$alldirs .= "$thisdir";
				if (!empty($thisdir))
				{ // try unsetting without the / at the end
					setcookie($name, $value, $expire, $alldirs, $vboptions['cookiedomain'], $secure);
					setcookie($name, $value, $expire, '', 'www.endless-anime.com', $secure);
				}
				$alldirs .= "/";
				setcookie($name, $value, $expire, $alldirs, $vboptions['cookiedomain'], $secure);
				setcookie($name, $value, $expire, '', 'www.endless-anime.com', $secure);
			}
		}
		else
		{
			setcookie($name, $value, $expire, $vboptions['cookiepath'], $vboptions['cookiedomain'], $secure);
			setcookie($name, $value, $expire, '', 'www.endless-anime.com', $secure);
		}
	}
	else if (!DB_QUERIES)
	{ //show some sort of error message
		global $templateassoc, $DB_site;
		if (empty($templateassoc))
		{
			// this is being called before templates have been cached, so just get the default one
			$template = $DB_site->query_first("
				SELECT templateid
				FROM " . TABLE_PREFIX . "template
				WHERE title = 'STANDARD_ERROR' AND styleid = -1
			");
			$templateassoc = array('STANDARD_ERROR' => $template['templateid']);
		}
		eval(print_standard_error('cant_set_cookies'));
	}
}
and the only part I really edited:

Code:
			foreach ($dirarray AS $thisdir)
			{
				$alldirs .= "$thisdir";
				if (!empty($thisdir))
				{ // try unsetting without the / at the end
					setcookie($name, $value, $expire, $alldirs, $vboptions['cookiedomain'], $secure);
					setcookie($name, $value, $expire, '', 'www.endless-anime.com', $secure);
				}
				$alldirs .= "/";
				setcookie($name, $value, $expire, $alldirs, $vboptions['cookiedomain'], $secure);
				setcookie($name, $value, $expire, '', 'www.endless-anime.com', $secure);
			}
		}
		else
		{
			setcookie($name, $value, $expire, $vboptions['cookiepath'], $vboptions['cookiedomain'], $secure);
			setcookie($name, $value, $expire, '', 'www.endless-anime.com', $secure);
		}
Reply With Quote
  #2  
Old 08-03-2005, 08:52 PM
Marco van Herwaarden Marco van Herwaarden is offline
 
Join Date: Jul 2004
Posts: 25,415
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

You can not set cookies across domains.
Reply With Quote
  #3  
Old 08-03-2005, 08:57 PM
10sion 10sion is offline
 
Join Date: Jul 2005
Posts: 38
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Any other ideas I could find out if theyre logged in the forums across the 2 domains and get there username/password?

I think I thought of a way but I dont know how to make it come together. I make a file on endless-anime.com named setcookie.php and make it get to http vars, ?userid=&pass= and then that file gets the values and sets a cookie for it. Somehow I need to include that file in the vbsetcookie function, maybe by printing out an iframe tag with its source being the file, any ideas?
Reply With Quote
  #4  
Old 08-04-2005, 02:12 AM
Jako Jako is offline
 
Join Date: Sep 2004
Location: Michigan
Posts: 30
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I'm pretty sure yo ucan do this by requiring the global.php file located in your forums on your main site. From there with a little coding you can check to see if they are logged in or not by checking for their username. I did this for my site recently and have it working great. If they are logged in it says welcome, $username if not it says they are not logged in and are required to do so in a login box or register first.
Reply With Quote
  #5  
Old 08-04-2005, 02:57 AM
10sion 10sion is offline
 
Join Date: Jul 2005
Posts: 38
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

umm I dont think you understood what Im trying to do... the login on the forums works fine but im trying to make it so when you login on the forums it sets a cookie on the site (a diffrent domain than the forum) thereby logging you in on the site where I can interact with the database.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 04:20 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04018 seconds
  • Memory Usage 2,198KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (2)bbcode_code
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete