Wade Preston Shearer wrote:
I just discovered that some code that I recently implemented is
preventing bots (the good kind) from crawling our site. The reason for
this is that my new code relies on cookies and bots do not support
cookies. I have a language switcher that switches languages on a site.
Since cookies to not take effect until the next page load, I
immediately redirect after setting the cookie so that the user sees
the effects of switching languages. To avoid setting the cookie on
every page load, I check to see if the cookie exists before setting
it. The problem is that browsers (and bots) that do not support
cookies (or have them disabled) will never meet the criteria of the
cookie being set and will be stuck in an infinite redirect loop. I
have spent hours trying to come up with solutions to this problem and
am still at a loss. Does anyone have any ideas how I can make this work?
This is the code that set's the cookie and does the redirect:
http://rafb.net/p/wsNBaW27.html
...
try something like (I haven't tested it):
<?php
// first time
if (!isset($_GET['cookie_set'])) {
setcookie('mycookie', 'somevalue');
header('Location: ?cookie_set=1');
exit;
// second time
} else {
if (isset($_COOKIE['mycookie'])) {
// cookies work, so redirect to the correct page
} else {
// cookies not supported, take appropriate action
}
}
Alvaro
_______________________________________________
UPHPU mailing list
[email protected]
http://uphpu.org/mailman/listinfo/uphpu
IRC: #uphpu on irc.freenode.net