Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1073 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Sauvegarder une variable

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Sauvegarder une variable

n°1954531
nisalon_ca​je
Posté le 03-01-2010 à 02:21:32  profilanswer
 

Bonjour
 
J'aurai aimé savoir, en php, s'il y avait moyen pour sauvegarder le contenu d'une variable d'une ouverture de ma page à l'autre au dela de la durée de la connexion (si deux jours plus tard je veux récupérer ma variable par exemple)
J'ai pensé à écrire dans un fichier texte, mais y a-t-il une autre solution ?
 
Merci d'avance :)

mood
Publicité
Posté le 03-01-2010 à 02:21:32  profilanswer
 

n°1954533
stealth35
Posté le 03-01-2010 à 03:03:33  profilanswer
 

soit session soit cookie, tu peu gérer la durée des 2

n°1954613
NewsletTux
<Insérez ici votre vie />
Posté le 03-01-2010 à 20:42:17  profilanswer
 

ou base de données.


---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1955469
philippe06
Posté le 06-01-2010 à 13:20:24  profilanswer
 

-Les sessions ne vont par définition pas au dela de la durée de la session.

 

-Les cookie sont une solution mais ils dépendent du client, avec probablement des limitations dans la taille.

 

-La base de donnée est pas mal, mais il faut un schéma de base donnée.

 

Je rajouterais la solution que j'emploie: dumper les variables des fichiers: put_records sauvegarde, get_records va chercher, is_present permet de tester si le fichier existe. C'est mal ce que je fais? :o

 
Code :
  1. <?php
  2. //gestion d'un cache pour alleger la base de donnée
  3. $cache_dir="/home/www/cache";
  4. $no_cache=false;
  5. function put_records($records,$nom_fichier,$absolute=false)
  6. {
  7. global $cache_dir;
  8. $cible=($absolute==false)?"$cache_dir/$nom_fichier":"$nom_fichier";
  9. $rep_final_tab=explode("/",$cible);
  10. $rep_final_tab[count($rep_final_tab)-1]="";
  11. $rep_final="";
  12. foreach($rep_final_tab as $rep_final_element){$rep_final.="/".$rep_final_element;}
  13. $exist_rep=file_exists($rep_final);
  14. if ($exist_rep==false)
  15. {
  16.  $r=popen  ("mkdir $rep_final","r" );
  17.  mkdir=".fgets($r)."<br>";
  18.  $r=popen  ("chmod 777 $rep_final","r" );
  19.   chmod=".fgets($r)."<br>";
  20. }
  21. $handle=false;
  22. try{
  23. $handle=fopen($cible,"w" );
  24. $fichier=var_export($records,true);
  25. $tmp=fputs($handle,$fichier);
  26. fclose($handle);
  27. return $tmp;
  28. }
  29. catch(Exception $e)
  30. {
  31.  return false;
  32. }
  33. }
  34. function get_records($nom_fichier,$absolute=false)
  35. {
  36. global $cache_dir;
  37. $cible=($absolute==false)?"$cache_dir/$nom_fichier":"$nom_fichier";
  38. $handle=false;
  39. try{
  40.  $handle=fopen($cible,"r" );
  41.  if ($handle!==false)
  42.  {
  43.   $fichier="";
  44.   $tmp="";
  45.   while($chunk=fgets($handle))
  46.    $fichier.=$chunk;
  47.   $res_eval=eval('$tmp='.$fichier.";" );
  48.   if ($res_eval===false)
  49.   {
  50.    $errfile_res=fopen('FICHIER_ERREUR','a+');
  51.    fputs($errfile_res,"erreur de fichier syntaxe dans le cache\n".print_r(debug_backtrace(),true));
  52.   }
  53.   fclose($handle);
  54.   return $tmp;
  55.  }
  56.  else return false;
  57. }
  58. catch(Exception $e)
  59. {
  60.  $errfile_res=fopen('FICHIER_ERREUR','a+');
  61.  fputs($errfile_res,"erreur de fichier syntaxe dans le cache\n".print_r(debug_backtrace(),true));
  62.  return false;
  63. }
  64. }
  65. function is_present($nom_fichier,$absolute=false,$uptodate=false)
  66. {
  67. global $cache_dir;
  68. global $no_cache;
  69. if ($no_cache==true) return false;
  70. $cible=($absolute==false)?"$cache_dir/$nom_fichier":"$nom_fichier";
  71. if (file_exists($cible))
  72. {
  73.  if (!$uptodate)
  74.  {
  75.   return true;
  76.  }
  77.  else if (date ("F d Y", filemtime($cible)) == date ("F d Y" ))
  78.  {
  79.   return true;
  80.  }
  81.  else return false;
  82. }
  83. else return false;
  84. }
  85. ?>


Message édité par philippe06 le 06-01-2010 à 13:22:36

---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°1955471
stealth35
Posté le 06-01-2010 à 13:26:52  profilanswer
 

la session peu etre persistante comme un cookie, y'a pas de soucis la dessus

n°1955474
philippe06
Posté le 06-01-2010 à 13:28:19  profilanswer
 

et la variable de session est accessible à d'autres sessions?

Message cité 1 fois
Message édité par philippe06 le 06-01-2010 à 13:35:58

---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°1955490
stealth35
Posté le 06-01-2010 à 14:05:56  profilanswer
 

philippe06 a écrit :

et la variable de session est accessible à d'autres sessions?


 
techniquement c'est possible, mais vu la demande on se doute que la variable est par rapport au client et non au serveur


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Sauvegarder une variable

 

Sujets relatifs
PB blocage variableURL Rewriting complexe avec variable PHP dans l'URL
Transformer une variable texte en datetime SQLDonner source tableau variable
Variable de Session prend Valeur du Get [Resolu][Résolu - PHP] Incrémenter une variable par autre chose que +1
stockage et affichage d'une image dans une variable phpmettre le resultat d'une requete dans une variable
Select + XMLHttpRequest + variable de sessionsauvegarder une variable de page en page sans BDD
Plus de sujets relatifs à : Sauvegarder une variable


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR