Pagina 1 van 1

vraag over 2 rijen in db die phpbb gebruikt

Geplaatst: 07 okt 2004, 19:52
door dopey
Hoi,

Ik heb hier eerder een vraag gesteld over de phpbb database die ik aan een mijn eigen usersysteem wil hangen. Na wat dingen bekeken te hebben wordt het me allemaal steeds duidelijker hoe ik het denk te gaan doen. Ik heb alleen 2 dingen waar ik nog niet echt achter kom. en dat zijn de 2 volgende dingen.

in de table phpbb_users staat een rij (hoe heet dat eigelijk?) user_session_time die constant wordt geupdate. Ik heb het idee dat de waarde die die rij heeft minimaal een minuut er in blijft staan en als er binnen die minuut een actie wordt gemaakt verandert deze waarde niet.
Mocht er na een minuut weer een actie gemaakt worden dan wordt de waarde wel geupdate. Nu is mijn vraag waarom gebeurd dit om de minuut ? Is dit om te verkomen dat er teveel db verkeer onstaat ?

mijn 2e vraag is in de table phpbb_sessions staat in de rij session_ip hier zal ongetwijfeld het IP van de bezoeker in staan op 1 of andere manier versleuteld. Kan iemand mij vertellen hoe dit is gedaan want ik kan het niet terug vinden in de code (ik vindt de code ook redelijk onderdoorzichtig)

Ik hoop dat iemand mij nog even kan helpen met deze vragen.

Re: vraag over 2 rijen in db die phpbb gebruikt

Geplaatst: 07 okt 2004, 20:05
door mosymuis
dopey schreef:in de table phpbb_users staat een rij (hoe heet dat eigelijk?)
Een kolom. ;)

dopey schreef:Nu is mijn vraag waarom gebeurd dit om de minuut ? Is dit om te verkomen dat er teveel db verkeer onstaat ?
Precies. Het stukje code vind je in sessions.php, vanaf regel #272.

Code: Selecteer alles

				//
				// Only update session DB a minute or so after last update
				//
				if ( $current_time - $userdata['session_time'] > 60 )
				{
				  ...
dopey schreef:Kan iemand mij vertellen hoe dit is gedaan want ik kan het niet terug vinden in de code (ik vindt de code ook redelijk onderdoorzichtig)
Het versleutelen gebeurt in common.php, met de functie encode_ip() welke te vinden is in functions.php.

Code: Selecteer alles

function encode_ip($dotquad_ip)
{
	$ip_sep = explode('.', $dotquad_ip);
	return sprintf('%02x%02x%02x%02x', $ip_sep[0], $ip_sep[1], $ip_sep[2], $ip_sep[3]);
}

function decode_ip($int_ip)
{
	$hexipbang = explode('.', chunk_split($int_ip, 2, '.'));
	return hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.' . hexdec($hexipbang[2]) . '.' . hexdec($hexipbang[3]);
}

Code: Selecteer alles

$client_ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR );
$user_ip = encode_ip($client_ip);
Meer info over de codering hier:
http://www.phpbb.nl/viewtopic.php?t=2155

Re: vraag over 2 rijen in db die phpbb gebruikt

Geplaatst: 08 okt 2004, 10:19
door dopey
mosymuis schreef:
dopey schreef:in de table phpbb_users staat een rij (hoe heet dat eigelijk?)
Een kolom. ;)
Dat wist ik :roll:

Verder harstikke bedankt voor de info hier kan ik denk ik zeker verder meekomen :D

Het is toch nog een stuk lastiger dan ik dacht om je eigen usersysteem aan phpbb te koppellen...

Ik las dat versie 2.0.10 de laatste versie die ze in de 2.0.* uigeven. Is er al iets bekent over of de db layout helemaal verandert in versie 2.1 of 2.2 ?

Re: vraag over 2 rijen in db die phpbb gebruikt

Geplaatst: 08 okt 2004, 18:27
door mosymuis
dopey schreef:Ik las dat versie 2.0.10 de laatste versie die ze in de 2.0.* uigeven.
Dat zeggen ze al sinds de laatste 5 versies; als er weer nieuwe exploits gevonden worden zal er heus een 2.0.11 uitgebracht worden. Aan de database zal iig niets meer gebeuren tot 2.2.

dopey schreef:Is er al iets bekent over of de db layout helemaal verandert in versie 2.1 of 2.2 ?
De user tabel is in grote lijnen hetzelfde. Je kunt de ontwikkelingsversies van phpBB 2.2 downloaden op http://area51.phpbb.com