Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/03/2011, 18h20   #1
Membre à l'essai
 
Inscription : août 2008
Messages : 267
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 267
Points : 20
Points : 20
Par défaut sauvegardez la valeur de $_POST

bonsoir à tous j'ai une variable $_POST qui contient des valeurs dynamiques à cause d'une fonction
je voudrais savoir comment je peut sauvegardez la valeur de $_POST quand je change de page
j'ai essayez les sessions mais ca ne garde pas la structure de $_POST

merci
ferhat.adel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2011, 18h53   #2
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 014
Points : 5 014
Hello

Sauvegarder l'intégralité de $_POST est une mauvaise idée, un utilisateur malin pourait en détourner l'usage pour introduire ses propre variables.

La meilleure façon de procéder est de ne sauvegarder que les données qui nous intéressent, par exemple dans le cas d'un panier d'achat, on va avoir un id_produit et un qt_produit qui vont nous arriver par $_POST. On va alors sauvegarder ces données comme suit:
Code :
1
2
3
4
5
6
7
8
9
10
 
<?php
session_start(); // rien devant cette ligne, pas de HTML ni d'espaces
 
//.....
 
if (isset($_POST['id_produit']) && isset($_POST['qt_produit'])) {
  if (empty($_SESSION['cart'])) $_SESSION['cart'] = array();
  $_SESSION['cart'][$_POST['id_produit']] = $_POST['qt_produit'];
}
Ainsi notre variable de session contiendra (de manière isolé et sûre) un panier qui consiste en un tableau associatif dont les clés sont les id des produits et les valeurs les quantités demandées.
Si sur une autre page du site, mettont "résumé du panier" on désire accéder à nouveau à ces informations, on fera:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
<?php
session_start(); // pareil
 
// ...
if (!empty($_SESSION['cart'])) {
  foreach ($_SESSION['cart'] as $id_produit => $qt_produit) {
    echo "Produit [$id_produit] : $qt_produit";
  }
}
else
  echo "Votre panier est vide";
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h46.


 
 
 
 
Partenaires

Hébergement Web