Ho un problema relativo ad un settagio di cookie dopo una determinata operazione, dove su un server windows di aruba(PHP 4.3.10 e IIS6)funziona(idem su un server linux di serverplan) e su un'altro sempre windows (PHP 4.3.9 e IIS5) non funziona. Premesso che ho verificato il discorso settaggi PHP e non trovo grosse differenze sostanziali, vi riporto il codice che crea problemi.
codice:
function li() {
global $password;
global $login;
global $passage;
global $cookie_user;
global $envSelected;
$user = "$login";
$user .= "%";
$user .= "$password";
$user_info = base64_encode($user);
$crypted_pass = md5($password);
$resource = mysql_query("SELECT id FROM users WHERE username=\"$login\" AND password=\"$crypted_pass\" ", $envSelected->dbMyWork);
$resources_num = mysql_num_rows($resource);
if ($resources_num == 1) {
setcookie("cookie_user",$user_info,time()+3600);
header("Location: pagine.php?page=Login&passage=liok");
}else{
if ( $resources_num > 1){
print("Attenzione: più di un utente possiede stessa password e stesso username");
} else {
if ( $resources_num == 0) header("Location: pagine.php?page=Login&passage=liko");
}
}
}
Quindi credo si capisca che dopo una query di verifica user e pass se da come risultato 1 va a settare il cookie altrimenti esegue altre cose...
Non mi spiego perchè questo passaggio funziona su due server differenti e sul terzo server su cui ora è ospitato non crea il cookie, eppure facendo una prova in un file a parte cercando di settare un cookie tutto funziona...
Qualcuno sa dirmi se su questo può influire qualche parametro dei settaggi del php oppure se può essere dovuto alla versione di IIS o di PHP stesso?
Ve ne sarei molto grato, purtroppo la mia limitata esperienza ancora non mi permette di capire se sbaglio qualcosa io a livello di programmazione o se il server fa capricci...
Ringrazio anticipatamente