Thanks pal, you are great. I will try out. 
Cheers, Andrew 

-- Sawsan Sarandah <[EMAIL PROTECTED]> wrote: > Hi
Andrew,
> I've been working on a similar question recently.
> Try to set the cookie and
> then redirect back into the same script. When
> setting the cookie, also place
> a temporary value in the CGI environment. When the
> script is activated the
> second time around, the presence of the temporary
> CGI value indicates our
> attempt to set a cookie. If there is no cookie and
> the temporary value
> exists, it basically means that the remote browser
> is not accepting our
> cookie. BTW, I gained a lot of insight regarding
> this issue by reading a
> Randal Schwartz tutorial at the following URL:
> 
>    
>
http://www.stonehenge.com/merlyn/WebTechniques/col61.html
> 
> and I know that the author frequently hovers around
> this newsgroup so I just
> want to say thank you Randal for your excellent
> articles.
> 
> Ibrahim Dawud
> 
> 
> 
> 
> Here is a sample of my code which is based on that
> tutorial:
> 
> my $visitor_cookie =
> $cgi->cookie(-name=>'site-visitor');
> my $visitor_param  = $cgi->param ("site-visitor");
> 
> if (!defined $visitor_cookie){
>     if (!defined $visitor_param){
>         # Try to start a new session by setting a
> "site-visitor"
>         # cookie. If that fails, place the session
> in the CGI environment.
>         $visitor_cookie = $cgi->cookie
>  -name=>"site-visitor",-value=>"value");
>         if (!defined $cgi->param("cookietemp")) {
>             # Try to create a "site-visitor" cookie
> for the first time.
>             # Exit the script using redirect and
> come back to check if it is
> there.
>             # Set a temporary value in the CGI
> environment.
>             $cgi->param("cookietemp",1);
>             print $cgi->redirect(-cookie=>
> $visitor_cookie, -uri=>
> $cgi->self_url());
>         }
>         else {
>             # We know if we are here that we failed
> to create a
> "site-visitor"
>             # cookie the first time we ran this
> script. Place the session
> data
>             # in the CGI environment instead.
>             $cgi->param("site-visitor","value");
>             print $cgi->redirect(-uri=>
> $cgi->self_url());
>         }
>     }
>     else {
>         # Basically, the previous session was passed
> via CGI. It is
>         # reasonable to continue using CGI to pass
> along session data. This
>         # means making sure that all links and
> hidden fields have a
>         # unique identifier embedded in them to pass
> on.
>         if (!defined $cgi->param("cookietemp")) {
>             # subsequent times using CGI
>         }
>         else {
>             # first time using CGI
>             $cgi->delete("cookietemp");
>             print $cgi->redirect(-uri=>
> $cgi->self_url());
>         }
>     }
> else {
>     # previous session was passed via a cookie.
> Question: Is it necessary
>     # to also check CGI parameters at this point?
> Probably not since
>     # we have assumed cookies as the primary method
> for passing session
>     # data.
>     if (!defined $cgi->param("cookietemp")) {
>         # subsequent times using cookies
>     }
>     else {
>         # first time using cookies
>         $cgi->delete("cookietemp");
>         print $cgi->redirect(-uri=>
> $cgi->self_url());
>     }
> }
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> ----- Original Message -----
> From: "Andrew" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Thursday, September 27, 2001 4:27 AM
> Subject: Cookie and redirecting.
> 
> 
> > Dear Folks,
> >
> >     I am currently working on cookies for tesing
> out.
> > Although a lot of people had disabled the function
> on
> > their browsers, I would just like to try it.
> >
> >     I got few knotty problems :
> >
> >     1) I could set the cookie's parameters and
> > retrieve it. But how I can make use of the
> returned
> > parameters to realise the concept of cookie.
> >
> >     2) Upon detecting that the cookie is not valid
> > using if statement, I would like to use the
> command in
> > the CGI script to immediate load another URL page.
> I
> > had tried the redirect command for cookie but
> could
> > not help.
> >
> > E.g. if ($cookieID eq '12345') {
> >
> >          #load new web page.
> >
> >          }
> >
> > Thanks,
> > Andrew
> >
> >
> >
>
____________________________________________________________
> > Do You Yahoo!?
> > Get your free @yahoo.co.uk address at
> http://mail.yahoo.co.uk
> > or your free @yahoo.ie address at
> http://mail.yahoo.ie
> >
> > --
> > To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> > For additional commands, e-mail:
> [EMAIL PROTECTED]
> 
> 
> -- 
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
> [EMAIL PROTECTED]
>  

____________________________________________________________
Do You Yahoo!?
Get your free @yahoo.co.uk address at http://mail.yahoo.co.uk
or your free @yahoo.ie address at http://mail.yahoo.ie

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to