par
jacfev » 04 févr. 2011, 15:57
Bonjour,
Suite à un précédent post, une recommandation m'était faite de transmettre les variables par la superglobale $_SESSION, mais celle-ci peut être modifiée facilement dans l'url.
Bon ce n'est sûrement pas un scoop pour certains d'entre vous.
Demo :
issu de CÉCILE ODERO et MAGALI CONTENSIN (PHP Solutions)
Dans page1.php
session_start();
// recuperer le parametre passé dans l'URL
$nb = isset($_GET['nb']) ? (int)$_GET['nb'] : 0;
// stocker les donnees dans des variables de session
$_SESSION['quantite'] = $nb;
$_SESSION['ref'] = 'A-06-18';
Dans page2.php
session_start();
// afficher les variables de session
foreach ($_SESSION as $cle=>$valeur) {
echo "Variable de session $cle, contenu = $valeur<br>";
}
Si le script page1.php est modifié dans l'url :
?nb=12
Cela affecte le contenu de la variable quantite.
Ce n'est pas beaucoup plus sûr que de transmettre par $_GET.
Comment y remédier alors ?
Cordialement
Jacques.
Bonjour,
Suite à un précédent post, une recommandation m'était faite de transmettre les variables par la superglobale $_SESSION, mais celle-ci peut être modifiée facilement dans l'url.
Bon ce n'est sûrement pas un scoop pour certains d'entre vous.
Demo :
[b]issu de CÉCILE ODERO et MAGALI CONTENSIN (PHP Solutions)[/b]
Dans page1.php
[color=#0000FF]session_start();
// recuperer le parametre passé dans l'URL
$nb = isset($_GET['nb']) ? (int)$_GET['nb'] : 0;
// stocker les donnees dans des variables de session
$_SESSION['quantite'] = $nb;
$_SESSION['ref'] = 'A-06-18';
[/color]
Dans page2.php
[color=#0000FF]session_start();
// afficher les variables de session
foreach ($_SESSION as $cle=>$valeur) {
echo "Variable de session $cle, contenu = $valeur<br>";
}
[/color]
Si le script page1.php est modifié dans l'url :
[b]?nb=12[/b]
Cela affecte le contenu de la variable quantite.
Ce n'est pas beaucoup plus sûr que de transmettre par $_GET.
[b]Comment y remédier alors [/b]?
Cordialement
Jacques.