Publiqué una pregunta similar antes, pero nunca recibí una respuesta que me ayudara, así que estoy tratando de intentarlo de nuevo. Como descargo de responsabilidad, sé que mucha de la información aquí no sigue las prácticas de codificación perfecta, pero es sólo para fines de ejercicio. Probé un millón de cosas y parece que nada funciona, ¡porque no estoy seguro de a dónde irá todo! Necesito desesperadamente alguna (¡cualquiera!) Ayuda, ¡así que gracias de antemano si puedes ofrecer algo!php cookies y variables de sesión y dirección IP
Estoy tratando de crear un formulario/página simple que use algunas cookies básicas y material de sesión para producir algunos datos específicos del usuario. Me estaba moviendo bien hasta que encontré algunos problemas que no puedo resolver. En mi primera página, todo está bien, excepto que solo quiero el NOMBRE del navegador que el usuario está usando. (Por ejemplo, quiero simplemente el título simple: Firefox en lugar de la versión completa del navegador.) He visto esto hecho, así que creo que es posible, ¡simplemente no sé cómo hacerlo!
Mis problemas reales aparecen aquí, porque no estoy muy seguro de cómo almacenar la dirección IP, la información del navegador y la fecha/hora actual (que quiero mostrar en la página 2) como variables de sesión. Intenté algunas cosas que encontré, pero no creo que lo haya hecho bien.
También trabajé sin parar tratando de almacenar el nombre de usuario y las contraseñas como dos cookies separadas cada una ... ¿sugerencias? Finalmente, ¿qué debo hacer para tener un encabezado de ubicación (usado para llamar a form_data.php) con buffer de salida?
(No estoy seguro de que esto sea tan útil, considerando que probablemente hice todo mal! LOL) Esta es una versión totalmente reducida de mi código. Intenté publicar mi versión más limpia, a pesar de que no tiene mucha información, para que pudieras ver fácilmente lo que estaba tratando de hacer.
principal código de archivo:
<?php
header('Location: form_data.php');
setcookie('username', $_POST['username']);
setcookie('password', $_POST['password']);
//I know this isn't working.
//honestly I just left this in here as to show where I had been
//trying to save the cookie data. Pretty obvious how bad my
//trial and error with this went!
}
?>
<?php
$_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
echo " By the way, your IP address is: </b>".$_SESSION['ip']."<br />";
echo " You already know this, but the browser you are currently using
to view this page is:<br/>"; //What is the correct function that I should be using here?
echo "<form action=\"form_data.php\" method=\"post\">";
echo "username:<input type=\"text\" name=\"username\" size=\"20\" value=\"\"><br/>";
echo "password:<input type=\"password\" name=\"password\" size=\"20\" value=\"\"><br/>";
echo "<input type=\"submit\" value=\"Submit, please\" />";
echo "<br /><input type=\"hidden\" name=\"submitted\" value=\"true\" />";
?>
form_data.php
<?php
echo "Hello, ".$username;//I'm trying to get the cookie data for the username
echo "Your password is ".$password; //Samething here (want cookie data)
echo "The date and time you entered this form is: ".date("F j, Y")." -- ".date("g:i a");
echo "<br/>Your IP:".$_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
echo "<br/>Your broswer:".;//I want full broswer data here...dont know how to do it.
//Overall, was this the way to get the session variables for IP, date/time and browser?
echo "Thank you for filling out this form!";
?>
¡NO guarde su nombre de usuario y contraseña en las cookies! En su lugar, almacene una cadena al azar en la cookie para permitirle al usuario regresar más tarde al hacer coincidir un valor en la base de datos con el valor de la cookie, y regenere ese valor en cada carga de página. –
No use 'setcookie', nunca. Simplemente use '$ _SESSION' y mantenga todos los datos relevantes para la sesión en el servidor. La única cookie que el cliente necesitará es la cookie de sesión, y usted no tiene que manejar eso explícitamente (además de regenerarla una vez que inicie sesión exitosamente para evitar la fijación). –
@Kerrek SB Las cookies siguen siendo útiles para conservar información no confidencial más allá de la duración de la sesión del servidor. Sirven un propósito diferente que '$ _SESSION'. –