php cookies de session et des variables et de l'adresse ip

J'ai posté une question similaire avant, mais n'a jamais vraiment eu une réponse qui m'a aidé, donc je suis à la recherche d'essayer de nouveau. Comme un avertissement, je sais que beaucoup de l'information ici ne suit pas parfait pratiques de codage, mais c'est à des fins d'exercice seulement. J'ai essayé un million de choses et rien ne semble fonctionner car je ne suis pas vraiment sûr où tout devrait aller! J'ai désespérément besoin d'une certaine (de tout!) aider donc merci d'avance si vous pouvez offrir quoi que ce soit!

Je suis en train de créer un formulaire simple /page qui utilise une base de cookie de session et des trucs pour produire certaines données spécifiques à l'utilisateur. Je marche bien jusqu'à ce que je suis tombé sur quelques problèmes que je n'arrive pas à comprendre. Sur ma première page, tout est bon, sauf pour je veux juste le NOM du navigateur de l'utilisateur. (par exemple, je veux juste le simple titre: Firefox au lieu de l'ensemble de la version longue du navigateur.) Je l'ai vu faire donc je pense que c'est possible, je ne sais pas comment le faire!

Mes vrais problèmes viennent juste ici, parce que je ne suis pas exactement sûr de la façon de stocker l'adresse IP, le navigateur info et la date/heure actuelle (qui je veux indiqué à la page 2) que les variables de session. Essayé quelques choses que j'ai trouvé, mais je ne pense pas que j'étais en train de faire.

J'ai aussi travaillé sans cesse à essayer de stocker le nom d'utilisateur et les mots de passe des deux témoins chacun...des suggestions? Enfin, que dois-je faire pour avoir un endroit de l'en-tête (utilisé pour appeler form_data.php) avec le tampon de sortie?

(Pas sûr que ce sera utile, compte tenu que je l'ai probablement fait tout de travers! LOL) C'est totalement un stripped-down version de mon code. Essayé de poster ma propre version, même si elle n'a pas beaucoup d'infos, de sorte que vous pouvez facilement voir ce que j'essayais de faire.

principal fichier de code:

<?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!"; 
   ?> 
Ne PAS stocker votre nom d'utilisateur et le mot de passe dans les cookies! Au lieu de stocker certaines chaîne aléatoire dans le cookie pour permettre à l'utilisateur de revenir plus tard par la contrepartie d'une valeur dans la base de données pour la valeur du cookie, et de recréer de la valeur à chaque chargement de page.
N'utilisez pas de setcookie, jamais. Il suffit de toujours utiliser $_SESSION et de conserver toutes les données relatives à la session sur le serveur. Le seul témoin que le client a besoin est le cookie de session, et vous n'avez pas à manipuler explicitement (à l'exception de la régénération de la une fois si la connexion réussit à éviter la fixation).
SB Cookies sont encore utiles à persister non sensibles au-delà de la durée de vie du serveur de session. Ils servent un autre but que celui de $_SESSION.

OriginalL'auteur clk | 2011-06-28