...

View Full Version : Cookie Problems



Lexar
12-01-2006, 01:36 AM
Howdy, I'm having some issues using cookies. I've identified the problematic line being in my login.php file, which is the action="POST" of my login form.



<?php
if(empty($_POST['name']) || empty($_POST['pass']))
{ ?>
<b>Fill All Details </b>
<?php exit;
}
else
{
//Colllect the details and validate
$time = time();
$name = $_POST['name'];
$pass =md5($_POST['pass']);
$check = 'ON';

$db = mysql_connect("-----", "-----","-----") or die(mysql_error());
mysql_select_db("-----",$db) or die(mysql_error());
$query = "select * from Customer where Username='$name' and Password='$pass'";
$sql = mysql_query($query) or die(mysql_error());
$count = mysql_num_rows($sql);

if ($count == 1)
{
$cookie_data = $name.'-'.$pass.'-'.$access;
if($check=='ON')
{

if(setcookie ("cookie_info",$cookie_data, $time+3600)==TRUE)
{
?> if check is on <?PHP
echo "Cookie SET".$cookie_data; ?>
<a href='logout.php'>Logout</a>

<? }
}
}
else
{
echo "Authentication Failed";
exit;
}//

}
?>


That's the entire file. I've found that the "if check is on" line will display if it's before the following if statment, but not inside of it.


if(setcookie ("cookie_info",$cookie_data, $time+3600)==TRUE)

Fou-Lu
12-01-2006, 03:11 AM
I don't understand the problem you are having, can you be more clear?
Sounds like this:


if(setcookie ("cookie_info",$cookie_data, $time+3600)==TRUE)
{
?> if check is on <?PHP
echo "Cookie SET".$cookie_data; ?>
<a href='logout.php'>Logout</a>

<? }

is never evaluated to true, is that correct?
As well, unless you have output buffering enabled in your php.ini, this code will never set a cookie correctly. This is because you have previous output to the browser, which you will need to capture either in a variable or by using output buffering in order to set the actual cookie.

Lexar
12-01-2006, 03:25 AM
Correct. The if statment is never evaluated to be true, and if I add an else statment to it, it will always run through the else. I've tried removing the output to the screen from above and still have the same issues.



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum