Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/09/2005, 08:28
echuc
 
Fecha de Ingreso: noviembre-2002
Mensajes: 112
Antigüedad: 21 años, 5 meses
Puntos: 0
Ayuda y explicacion de las cookies

Saludos ... este es unmensaje largo

Estoy validando usuarios con php en una pagina que se recarga asi misma y se me presenta un problema con las cookies, he leido los posts pero aun no me queda claro el funcionamiento de las mismas.
Inicio normal con html, de esta manera

<html>
<head>
<title>Documentos </title>

<script language="javascript" type="text/javascript">
if(document.getElementById){
document.write('<link rel="stylesheet" href="comun/css/comp.css" type="text/css" media="screen">');
document.write('<link rel="stylesheet" href="comun/css/print.css" type="text/css" media="print">');
}
</script>
<link rel="stylesheet" href="comun/css/otros.css" type="text/css">


<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
etc...


Utilizo hojas estilo para el dise#o de lapagina, y mucho mas adelante valido usuarios ademas uso javascript para ciertos mensajes y despues aparece este codigo, asi:

<?php

// linea para eliminar
include("bdconexion.php");
// $GLOBALS['usuario_id'] = $_COOKIE['usuario_id'];

// Verificacion si se envio la informacion del usuario
if($_POST['submit']) {
// Verificar nombre de usuario
$usuario = $_POST['username'];
$clave = $_POST['password'];
// Buscar en la base de datos el usuario
$usuario_id = validaUsuario($usuario,$clave);


if ($usuario_id != '') {
//crea la cookie
setcookie("usuario_id",$usuario_id, time()+(60*60*24*365*10),"/");
} else {
// Si no se encuentra el usuario
print("Datos Incorrectos");
}
}
if (empty ($usuario_id)){
// Muesta las cajas para introducir el usr y su clave
............. etc .......


Esto si funciona pero hay un inconveniente me la advertencia :



Warning: Cannot modify header information - headers already sent by (output started at /opt/apache/htdocs/base/barraIzquierda.php:5) in /opt/hpws/apache/htdocs/base/barraIzquierda.php on line 148



Efectivamente mi archivo se llama barraIzquierda y la linea 5 es donde dice <script language="javascript" ..... y hace referencia a la linea 148 que donde realmente se declara la cookie (que esta con un color diferente), si pongo al inicio de mi programa una cookie con un valor, no marca esta advertencia pero ese valor seria siempre el mismo cada vez que acceda a la pagina y no es el objetivo sino que sea el valor segun el nombre del usuario ....

He visto que aparecen problemas de cookies por espacios en blancos para eliminar este error, pero veo que este no es el caso, la cookie la creo despues de una condicion mas o menos en medio del programa pero no entiendo porque hay que poner una cookie al inicio del programa ....

Por favor necesito de su valiosa ayuda...

Gracias...