[ASP]uniek ID per browser

Pagina: 1
Acties:

  • Freemann
  • Registratie: Januari 2002
  • Niet online

Freemann

CO2 Warmtepomp + VentilatieWTW

Topicstarter
Ok zit even met een raar probleem. Wat ik wil is dat ik in ASP per browser een uniek ID heb. Je zou zeggen dan neem je een SessionID. Maar laat een SessionID nu aan je client gekoppeld zijn....
Het gevolgd is dat als je een sessie opent op pagina "A" met een link naar pagina "B"(welke in een nieuwe browser opent) dan hebben beide browser het zelfde SessionID. Nu wil ik het zo hebben dat iedere browser een eigen ID heeft welke ik aan de sessie kan koppelen en zo onderscheid kan maken tussen de browsers. Zover ik weet doet PHP dit eigenlijk al automatische, een sessionID per browser uitdelen, maar ASP/IIS niet.

Heb heel wat stukken zitten lezen op Google en wat dingen op GoT, maar kom nergens dit speficieke probleem tegen. Lees alleen maar globale dingen over sessionID waarvoor je ze kunt gebruiken. Iemand die er ervaring mee heeft of weet hoe je dit op kan lossen?

edit:

Is het misschien mogelijk om via een omweg Bijv. JS een ID uit de browser te trekken?

[ Voor 8% gewijzigd door Freemann op 01-09-2005 10:43 ]

https://www.taltion.nl, https://www.trekhaakkoffer-huren.nl, https://www.fietsendrager-huren.nl, https://www.fietskar-huren.nl


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Je wilt dus een sessionID per browserwindow? Misschien zou je de achterliggende gedachte even kunnen spiegelen zodat we je wellicht van tips kunnen voorzien. Ik zie overigens geen eenvoudige methode, je zou inderdaad met javascript een variabele aan het window-object kunnen hangen; maar de implementatie van onclicks enzo zou je waarschijnlijk helemaal niet blij van worden :)
edit:
Oh, en zowel ASP als PHP maken in dergelijke gevallen gebruik van sessie-cookies met een fallback naar URL rewrites; en werken dus exact hetzelfde volgens mij

[ Voor 19% gewijzigd door Spider.007 op 01-09-2005 10:46 ]

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 19:54

Bosmonster

*zucht*

PHP doet dit niet anders. Een sessie is een sessie. En een nieuw venster in dezelfde sessie is nog steeds dezelfde sessie.

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Je zou in de load met JS een unieke variabele kunnen genereren en dit (via XMLHTTP??) naar de server kunnen sturen. Dat is het eerste wat me te binnen schiet.

Oops! Google Chrome could not find www.rijks%20museum.nl


  • TeeDee
  • Registratie: Februari 2001
  • Nu online

TeeDee

CQB 241

Het lijkt me inderdaad handig als je even de achterliggende gedachte aangeef.

Hetgeen me nu te binnen schiet is werken met een Guid die op pagina B gemaakt wordt.
Dit in combinatie met het Javascript idee van Spider.007 kan wel iets bruikbaars opleveren.

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Sessies worden meestal (al dan niet onderwater) met cookies gerealiseerd. Cookies worden echter gedeeld door alle browserinstantanties van hetzelfde type browser (IE, Firefox, etc) en dezelfde ingelogde gebruiker, waardoor ook verschillende vensters dezelfde sessie delen.

Een manier om dit te voorkomen is door met cookieless sessies te gaan werken. Daarbij verwerk je een sessie id in de URL. Alle aanvragen zonder sessie id in de URL krijgen een nieuwe sessie id uitgedeeld. ASP ondersteunt dit niet 'out-of-the-box', dus je zult dit mechanisme zelf moeten implementeren of met externe componenten oplossen. Alternatief kan je ASP.Net gaan gebruiker, want deze ondersteunt wel cookieless sessions out-of-the-box.

Succes :)

Edit:
NB: Overigens kan de gebruiker nog steeds een URL van 1 browser naar de andere kopieren en zo in twee browserinstanties met dezelfde sessie werken.

[ Voor 13% gewijzigd door Verwijderd op 01-09-2005 10:52 ]


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Verwijderd schreef op donderdag 01 september 2005 @ 10:50:
[...]

Een manier om dit te voorkomen is door met cookieless sessies te gaan werken. Daarbij verwerk je een sessie id in de URL. Alle aanvragen zonder sessie id in de URL krijgen een nieuwe sessie id uitgedeeld. ASP ondersteunt dit niet 'out-of-the-box', dus je zult dit mechanisme zelf moeten implementeren of met externe componenten oplossen. Alternatief kan je ASP.Net gaan gebruiker, want deze ondersteunt wel cookieless sessions out-of-the-box.

Succes :)
En wat gebeurt er als je vanuit pagina-A een link opent naar pagina-B in een nieuw window? ;) Deze fallback die PHP inderdaad aanbiedt werkt eigenlijk exact hetzelfde als een sessie-cookie :)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • Freemann
  • Registratie: Januari 2002
  • Niet online

Freemann

CO2 Warmtepomp + VentilatieWTW

Topicstarter
ok dit is het verhaal:
De gebruiker dient een declaratieformulier in te vullen. Dit formulier loopt over verschillende pagina's (5 om precies te zijn) en daarbij dient hij verschillende gegevens in te vullen. Verschillende waarden welke de gebruiker invult worden tijdelijk in een sessie opgeslagen. Er zitten nu 2 zoekpagina's in het het proces welke ik dubbel gebruik. Dit houdt in dat de pagina's los gebruikt kunnen worden buiten het proces om resultaten te zoeken maar ook in het proces worden gebruikt. Tijdens het declaratieproces krijgt de gebruiker extra opties op de pagina aangeboden. Maar als de gebruiker in het proces zit en deze even "links" laat liggen en de losse zoekpagina gebruikt, dan blijven de extra opties zichtbaar. Dit natuurlijk omdat de sessie loopt en op basis van de sessie de opties worden aangeboden. Nu wil ik eigenlijk een uniek ID hebben welke ik in de sessie opsla om te kunnen matchen of de pagina opgeroepen wordt in het proces of los en dit dan op basis van een browser ID of iets waarmee de browserWindows is te identifiseren.

edit:

Ik doe dit alles om geen 2x2 pagina's te hoeven maken welke ook weer alle 4 moeten worden onderhouden.....

[ Voor 8% gewijzigd door Freemann op 01-09-2005 10:57 ]

https://www.taltion.nl, https://www.trekhaakkoffer-huren.nl, https://www.fietsendrager-huren.nl, https://www.fietskar-huren.nl


  • CrashOne
  • Registratie: Juli 2000
  • Niet online

CrashOne

oOoOoOoOoOoOoOoOoOo

Kan je dan niet beter iets in die sessie zetten waardoor je op de dubbele pagina's weet dat je de extras wel of niet moet laten zien?

Huur mij in als freelance SEO consultant!


  • TeeDee
  • Registratie: Februari 2001
  • Nu online

TeeDee

CQB 241

Inderdaad. Je kan toch gewoon in je sessie bijhouden wat ingevuld is e.d. en ook aangeven wat wel of niet getoond moet worden?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Freemann
  • Registratie: Januari 2002
  • Niet online

Freemann

CO2 Warmtepomp + VentilatieWTW

Topicstarter
TeeDee schreef op donderdag 01 september 2005 @ 11:02:
Inderdaad. Je kan toch gewoon in je sessie bijhouden wat ingevuld is e.d. en ook aangeven wat wel of niet getoond moet worden?
Hmm zie nog niet helemaal hoe ik dit vorm moet gaan geven.
Jammer dat je niet gewoon een ID uit de browsers kan trekken. 4 browsers op zijn 4 browser ID's met daarbij bijv. 1 overkoepelend sessionID

https://www.taltion.nl, https://www.trekhaakkoffer-huren.nl, https://www.fietsendrager-huren.nl, https://www.fietskar-huren.nl


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Als je geen alternatief kunt verzinnen is de enige manier om het met client side code te doen. Immers de server weet niet of een link in hetzelfde of in een nieuw venster wordt geopend. De client (browser) is de enige die daar van op de hoogte is, maar volgens mij zijn er wel alternatieven denkbaar zoals hierboven ook al aangegeven.

Oops! Google Chrome could not find www.rijks%20museum.nl


  • WormLord
  • Registratie: September 2003
  • Laatst online: 30-03 16:26

WormLord

Devver

Of kun je iets via de link meegeven, zodat je weet van waaruit de zoek-pagina word aangeroepen?

Verwijderd

Spider.007 schreef op donderdag 01 september 2005 @ 10:52:
[...]

En wat gebeurt er als je vanuit pagina-A een link opent naar pagina-B in een nieuw window? ;) Deze fallback die PHP inderdaad aanbiedt werkt eigenlijk exact hetzelfde als een sessie-cookie :)
Je kan forceren dat een nieuw window met een schone, sessie-id-loze URL wordt geopend.

Maar goed, zoals al gesuggereerd zijn er veel meer elegante oplossingen voor dit probleem te bedenken. Je kan een searchMode=[waarde] meegeven in een link die aangeeft of de sessiewaarden wel of niet meegenomen moeten worden in het opbouwen van het zoekscherm.

  • Salandur
  • Registratie: Mei 2003
  • Laatst online: 16:03

Salandur

Software Engineer

ik zou vanuit de formulieren een waarde meegeven in je get waarmee je aan kan geven of het zoekformulier vanuit het invulformulier wordt weergeven. op het moment dat het zoekformulier dan los geopend wordt dan kan je de extra opties verbergen.

Assumptions are the mother of all fuck ups | iRacing Profiel


  • Freemann
  • Registratie: Januari 2002
  • Niet online

Freemann

CO2 Warmtepomp + VentilatieWTW

Topicstarter
Salandur schreef op donderdag 01 september 2005 @ 11:13:
ik zou vanuit de formulieren een waarde meegeven in je get waarmee je aan kan geven of het zoekformulier vanuit het invulformulier wordt weergeven. op het moment dat het zoekformulier dan los geopend wordt dan kan je de extra opties verbergen.
Ja deze optie is nu idd meerdere keren genoemd en volgens mij wel een van de nettere oplossingen. Helaas is er zo dus niet even een andere nette snelle oplossing te bedenken. Maar goed dank voor het meedenken! :)

https://www.taltion.nl, https://www.trekhaakkoffer-huren.nl, https://www.fietsendrager-huren.nl, https://www.fietskar-huren.nl

Pagina: 1