begin process at 2012 05 28 08:05:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

Actualiser la page et $_SESSION


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Actualiser la page et $_SESSION

vendredi 21 octobre 2005 à 09:10:13 | Actualiser la page et $_SESSION

lagombe

Bonjour,

Tout d'abord une grand merci à arnal69130 pour sa source qui marche à merveille, si ce n'est un petit souci : je m'explique : j'ai un formulaire en POST, qui envoie les infos à une feuille intermédiaire qui transforme les $_POST en $_SESSION (encore merci à arnal ;-)), qui vérifie la saisie et qui bascule selon la validité de cette saisie soit sur la suite, soit qui me ramène à mon formulaire où les $_SESSION vont être utilisés pour valeur par défaut de mes champs. Du coup, je suis obligé de vider les variables de SESSION à la fin de la page pour éviter que mon utilisateur, lors d'une nouvelle saisie sur mon form se retrouve avec ses valeurs par défaut. Jusque là ça fonctionne, sauf que dans le système où je vais intégrer ces feuilles je passe en SESSION d'autres variables donc notamment le login utilisateur. Quel est le moyen le plus simple pour vider les $_SESSION qui m'intéressent sans toucher aux autres, en évitant par exemple une boucle fastidieuse qui testerait les clés des $_SESSION?
En espérant avoir été clair... merci pour vos futures participations...

lagombe
vendredi 21 octobre 2005 à 09:11:48 | Re : Actualiser la page et $_SESSION

lagombe

J'ai oublié de donner l'adresse de la source d'arnal69130 :
http://www.phpcs.com/code.aspx?id=24433
;-)

lagombe
vendredi 21 octobre 2005 à 09:30:31 | Re : Actualiser la page et $_SESSION

monoceros01

Je pense qu'il faut vider les variables que tu veux supprimer une par une avec
unset($_SESSION["a_la_poubelle"]);

Ou alors utiliser un nommage différent selon les variables que tu veux garder ou pas. par exemple :
$_SESSION["perm_variable"] = "plop";
$_SESSION["temp_variable"] = "plop";


Si tu ne veux supprimer que les variables temporaires tu n'as plus qu'a faire
foreach($_SESSION as $key=>$val)
{
    if(substr($key,0,5) == "temp_")
    unset($_SESSION[$key]);
}


Mais bon, à ta place, si je n'ai pas beaucoup de variable, j'utiliserais tout bêtement ma première solution.
(Je ne sais plus qui aime pas les foreach, mais s'il voit mon post il va me gronder :p)

vendredi 21 octobre 2005 à 09:39:59 | Re : Actualiser la page et $_SESSION

lagombe

Les vider une par une... ça risque d'être un peu long et confus... vu le nombre de varaibles de SESSION que je vais me trimbaler avec le script d'arnal69130... et je voulais éviter le foreach mais on est d'accord, je crois que ce sera difficile... ;-)

lagombe
vendredi 21 octobre 2005 à 09:54:18 | Re : Actualiser la page et $_SESSION

malalam

Administrateur CodeS-SourceS
Hello,

y a pas, faut boucler sur les variables à effacer.
Néanmoins, si l'idée de monoceros est très bonne (je parle de la 2de), j'éviterais de boucler sur un substr() en plus. A la place, j'utiliserais un autre tableau, dans lequel je stockerais index à effacer. Puis je bouclerai sur ce tableau, pour effacer les index correspondants dans $_SESSION.
bref :
$AEffacer = array ('sup','supagain');
$_SESSION['sup'] = 'A effacer';
$_SESSION['supagain'] = 'A effacer aussi';
$_SESSION['keep'] = 'A garder;

foreach ($AEffacer as $supr) {
  unset ($_SESSION[$supr]);
}

L'inconvénient est qu'au lieu d'une simple règle de nommage, tu te trimballes un tableau en plus, et qu'il faut le mettre à jour si tu modifies des formulaires dans ton code.
vendredi 21 octobre 2005 à 10:22:30 | Re : Actualiser la page et $_SESSION

lagombe

Effectivement l'idée est pas mal...

lagombe
vendredi 21 octobre 2005 à 13:49:23 | Re : Actualiser la page et $_SESSION

FhX

Voui, c'est l'orgie !

Il vaut mieux que tu découpes ton super-tableau $_SESSION[]. Je m'explique :

Pour garder les infos utilisateurs primordiales (login etc...) :
$_SESSION['user']['login'] = $login;
$_SESSION['user']['email'] = $email;
par exemple.

Et pour les infos temporaires (genre formulaire) :
$_SESSION['temp']['login'] = $temp_login;
$_SESSION['temp']['email'] = $temp_email;

Et quand t'en a plus besoin :
unset($_SESSION['temp']);


C'est tout aussi simple !

vendredi 21 octobre 2005 à 14:20:36 | Re : Actualiser la page et $_SESSION

lagombe

oui mais ça, ça marche pas dans mon cas, puisque je passe par une boucle foreach pour faire passer les $_POST sur des $_SESSION (cf. le code de arnal69130 http://www.phpcs.com/code.aspx?id=24433)...

lagombe
vendredi 21 octobre 2005 à 14:37:08 | Re : Actualiser la page et $_SESSION

monoceros01

Réponse acceptée !
Mouahahah FhX t'as lu dans mes pensées :p (mais j'ai eu la flemme sur le coup parce qu'il aurait fallut comme je vais le faire expliquer comment construire le formulaire html pour avoir la même structure dans la variable $_POST que ce que tu as décris)

donc lagombe faut faire un truc comme ça :
<form method="post" action="plop.php">
    <input type="text" name="user[login]" value="" />
    <input type="text" name="user[email]" value="" />
    <input type="text" name="temp[login]" value="" />
    <input type="text" name="temp[email]" value="" />

    <input type="submit" value="Soumets-toi manant" />
</form>

et le code de ton mentor ;p te donnera ce qu'a écrit FhX =)

vendredi 21 octobre 2005 à 14:50:07 | Re : Actualiser la page et $_SESSION

malalam

Administrateur CodeS-SourceS
Je ne me souviens plus du code de arnal, mais va falloir sans doute le modifier un peu aussi, pour sa boucle.
Sinon c'est la meilleure idée, oui :-)


1 2

Cette discussion est classée dans : page, formulaire, session, saisie, actualiser


Répondre à ce message

Sujets en rapport avec ce message

Session & passage de var avec formulaire [ par ironnyc ] Salut a tous!j ai un petit prob avec les sessions.Pourquoi session_start() detruit tout le contenu des variables que j'envoye par un formulaire avec d actualisation de page [ par bellamy ] <td id="HB_Focus_Element" valign="top" width="100%" b Envoyer la saisie d'un formulaire dans une autre page [ par landry57 ] Bonjour,J'ai 2 fichiers : nouveau_nom.php et liste_nom.phpDans le premier, j'ai crée un formulaire avec une boite de saisie a remplir, nommé nom + un Actualiser un questionnaire, sans actualiser la page...? [ par BooletMan ] Yo à tous!Je construit la partie admin de mon blog (que c'est moi qui le fait tout seul). J'ai fait un formulaire pour uploader des photos, et un autr Page blanche sur session_start [ par bruno3591 ] Bonjour, j'ai une page blanche quand je valide le formulaire d'authentification. Il y a 2 pages, une pour le formulaire et l'autre pour traiter les i Pb d'interpretation de formulaire [ par michelst ] Bonjour à tous,Je suis un peut dans l'impasse. Mon pb est que je veux envoyer les données issu d'un formulaire vers une page qui me donne un résultat( réaffichage de donnée dans formulaire de saisie [ par snakeyes ] Bonjour à tous et un grand merci à vous.....un novice qui apprend tous les jours grâce à vous.Mon problème, je désire réafficher des données de ma bas formulaire [ par ahlemlo ] bonjourj'ai une long formulaire je veux le composer en 2 page comment faire ça? car lorsque on clique sur valider les information serons enregistré da Formulaire - case cochée => nouveaux champs [ par corambe ] Bonjour à tous,J'ai créé un formulaire de réservation de randonnées sur mon site ( www.corambe.com/randos/réservation.html ).Je voudrais le modifier, Récupérer du code html saisie dans un input [ par coba5 ] Bonjour,J'aimerai qu'un visiteur insere le lien d'une vidéo dans un formulaire, qu'il clique sur le bouton inserer la vidéo et que la vidéo s'affiche


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,749 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales