Récupérer données formulaire dans une variable de session - How?
Fermé
jacobmboyo
-
18 oct. 2017 à 18:00
jordane45 Messages postés 38446 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 28 février 2025 - 19 oct. 2017 à 09:53
jordane45 Messages postés 38446 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 28 février 2025 - 19 oct. 2017 à 09:53
Bonjour,
J'aimerais savoir comment stocker les données d'un formulaire dans une variable de session afin de les restituer sur une autre page.
Comprenez que je sais transiter des données de page en page en me servant d'un formulaire et du variable $_POST, mais la question n'est pas là.
Stocker les données saisi dans le formulaire pour l'affiché sur une autre page avec la variable SESSION.
Merci à l'avance de votre aide
J'aimerais savoir comment stocker les données d'un formulaire dans une variable de session afin de les restituer sur une autre page.
Comprenez que je sais transiter des données de page en page en me servant d'un formulaire et du variable $_POST, mais la question n'est pas là.
Stocker les données saisi dans le formulaire pour l'affiché sur une autre page avec la variable SESSION.
Merci à l'avance de votre aide
A voir également:
- Récupérer données formulaire dans une variable de session - How?
- Recuperer message whatsapp supprimé - Guide
- Formulaire de réclamation facebook - Guide
- Recuperer video youtube - Guide
- Impossible de récupérer mon compte gmail - Guide
- Comment récupérer un compte facebook piraté - Guide
3 réponses
jordane45
Messages postés
38446
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 février 2025
4 739
18 oct. 2017 à 18:58
18 oct. 2017 à 18:58
Bonjour
Deja.. mettre un
Sur chaque page
Puis utiliser la variable $_SESSION
Deja.. mettre un
session_start ();
Sur chaque page
Puis utiliser la variable $_SESSION
yg_be
Messages postés
23483
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
7 mars 2025
Ambassadeur
1 568
19 oct. 2017 à 00:44
19 oct. 2017 à 00:44
quand tu écris "je sais transiter des données de page en page en me servant d'un formulaire et du variable $_POST", je comprends que tu as fait un exercice pour faire cela.
j'ai l'impression que l'exemple que tu proposes avec tes trois pages est la solution de l'exercice précédent.
si tu veux faire un exercice en utilisant les sessions au lieu des formulaires, je pense qu'il faut faire un autre ensemble de pages, avec une autre logique.
par exemple:
- la page 1 affiche un formulaire, l'utilisateur le complète et les données sont passées à la page 2. cela commence donc comme l'exercice précédent.
- la page 2 mémorise les données dans les variables de sessions, puis affiche une page (sans formulaire) avec un lien vers la page 3. l'utilisateur clique sur le lien.
- la page 3 utilise les variables de sessions pour afficher les données sauvées par la page 2.
- ceci prouve que les données sont passées de la page 2 à la page 3 en utilisant les variables de session et pas un formulaire.
j'ai l'impression que l'exemple que tu proposes avec tes trois pages est la solution de l'exercice précédent.
si tu veux faire un exercice en utilisant les sessions au lieu des formulaires, je pense qu'il faut faire un autre ensemble de pages, avec une autre logique.
par exemple:
- la page 1 affiche un formulaire, l'utilisateur le complète et les données sont passées à la page 2. cela commence donc comme l'exercice précédent.
- la page 2 mémorise les données dans les variables de sessions, puis affiche une page (sans formulaire) avec un lien vers la page 3. l'utilisateur clique sur le lien.
- la page 3 utilise les variables de sessions pour afficher les données sauvées par la page 2.
- ceci prouve que les données sont passées de la page 2 à la page 3 en utilisant les variables de session et pas un formulaire.
Je ne voulais pas vous bombarder de code mais voici les détails:
J'ai réaliser un formulaire d'Insertion MySql (avec DreamweaverCS4), le problème est qu'avec l'insertion, j'ai juste ma page de confirmation qui dit tout simplement que l'insertion a bel et bien été effectué! Or j'aimerais que cette page puisse donner un résumé de mon INSERTION pour des fins d'impression. Il s'agit d'un système de transfert d'argent via un application web.
Comme je code avec Dreamweaver, mon code d'Insertion est assez kilométrique:
Si vous avez une meilleur idée, elle est la bienvenue.
Merci de vos réponse et de votre aide.
J'ai réaliser un formulaire d'Insertion MySql (avec DreamweaverCS4), le problème est qu'avec l'insertion, j'ai juste ma page de confirmation qui dit tout simplement que l'insertion a bel et bien été effectué! Or j'aimerais que cette page puisse donner un résumé de mon INSERTION pour des fins d'impression. Il s'agit d'un système de transfert d'argent via un application web.
Comme je code avec Dreamweaver, mon code d'Insertion est assez kilométrique:
<?php session_start(); if(!isset($_SESSION['zotikwa_iri'])) { header("location:./erreur.php"); // redirection exit; // arrêt du script } //La session est ouverte on peut afficher la page ?> <?php require_once('Connections/pata.php'); ?> <?php if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { if (PHP_VERSION < 6) { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; } $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? doubleval($theValue) : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "env-form")) { $insertSQL = sprintf("INSERT INTO toka (toka_montant, toka_montant_apayer, toka_numero, toka_nom_exp, toka_prenom_exp, toka_tel_exp, toka_ville_exp, toka_msg, toka_piece_valide, toka_nom_ben, toka_pren_ben, toka_tel_ben, toka_type_piece_exp, toka_num_piece_exp, toka_question, toka_reponse, zotikwa_nom) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)", GetSQLValueString($_POST['toka_montant'], "text"), GetSQLValueString($_POST['toka_montant_apayer'], "text"), GetSQLValueString($_POST['toka_numero'], "text"), GetSQLValueString($_POST['toka_nom_exp'], "text"), GetSQLValueString($_POST['toka_prenom_exp'], "text"), GetSQLValueString($_POST['toka_tel_exp'], "text"), GetSQLValueString($_POST['toka_ville_exp'], "text"), GetSQLValueString($_POST['toka_msg'], "text"), GetSQLValueString($_POST['toka_piece_valide'], "text"), GetSQLValueString($_POST['toka_nom_ben'], "text"), GetSQLValueString($_POST['toka_pren_ben'], "text"), GetSQLValueString($_POST['toka_tel_ben'], "text"), GetSQLValueString($_POST['toka_type_piece_exp'], "text"), GetSQLValueString($_POST['toka_num_piece_exp'], "text"), GetSQLValueString($_POST['toka_question'], "text"), GetSQLValueString($_POST['toka_reponse'], "text"), GetSQLValueString($_POST['toko_nom_agent'], "text")); mysql_select_db($database_pata, $pata); $Result1 = mysql_query($insertSQL, $pata) or die(mysql_error()); $insertGoTo = "imprimer.php"; if (isset($_SERVER['QUERY_STRING'])) { $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?"; $insertGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $insertGoTo)); } $colname_zoti = "-1"; if (isset($_SESSION['zotikwa_iri'])) { $colname_zoti = $_SESSION['zotikwa_iri']; } mysql_select_db($database_pata, $pata); $query_zoti = sprintf("SELECT * FROM zotikwa WHERE zotikwa_iri = %s", GetSQLValueString($colname_zoti, "text")); $zoti = mysql_query($query_zoti, $pata) or die(mysql_error()); $row_zoti = mysql_fetch_assoc($zoti); $totalRows_zoti = mysql_num_rows($zoti); ?>
EDIT : Ajout des balises de code
J'ai essayé de faire transiter les données de page en page avec la méthode POST de PHP mais arrivé au processus d'Instertion MySql, le POST n'est plus afficher sur la page d'Impression. C'est pourquoi je me suis dit qu'il fallait stocker les valeurs du formulaire dans une SESSION pour une restauration sur la page d'impression.Si vous avez une meilleur idée, elle est la bienvenue.
Merci de vos réponse et de votre aide.
jordane45
Messages postés
38446
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 février 2025
4 739
19 oct. 2017 à 09:53
19 oct. 2017 à 09:53
oula...Bon.. y'a des choses à revoir au niveau de ton code...
Commence par ça : https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Puis ensuite : https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
Ensuite, si ton souci est d'utiliser les variables de session, il faut :
Dans tes pages précédentes... les remplir.
Dans celle que tu nous montre... les utiliser !
enfin.. ce qui m'étonne en regardant "ton" (??) code... c'est que tu les a déjà utilisé....
par exemple ici
Donc je ne vois pas sur quoi tu bloques....
PS: A l'avenir, merci de mettre ton code avec la coloration syntaxique.
Voir ici les explications :https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Commence par ça : https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Puis ensuite : https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
Ensuite, si ton souci est d'utiliser les variables de session, il faut :
Dans tes pages précédentes... les remplir.
Dans celle que tu nous montre... les utiliser !
enfin.. ce qui m'étonne en regardant "ton" (??) code... c'est que tu les a déjà utilisé....
par exemple ici
if(!isset($_SESSION['zotikwa_iri'])) { header("location:./erreur.php"); // redirection exit; // arrêt du script }
Donc je ne vois pas sur quoi tu bloques....
PS: A l'avenir, merci de mettre ton code avec la coloration syntaxique.
Voir ici les explications :https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
18 oct. 2017 à 21:03
Cependant sur une des pages figure un formulaire auquel j'aimerais que les données soit charger dans la SESSION comme les autres données qui transitent déjà de page en page.
Un exemple:
<form action="/action_page.php">
First name:<br>
<input type="text" name="firstname" value="Mickey"><br>
Last name:<br>
<input type="text" name="lastname" value="Mouse"><br><br>
<input type="submit" value="Submit">
</form>
J'aimerais charger firstname et lastname dans la SESSION existante afin qu'elle puissent être restituer sur une page plus loin.
Merci!
18 oct. 2017 à 21:19
Ensuite... il te suffira de récupérer tes variables dans $_POST
18 oct. 2017 à 21:40
Voici mon code MySql:
<?php
session_start();
if(!isset($_SESSION['username']))
{
header("location:./erreur.php"); // redirection
exit; // arrêt du script
}
//La session est ouverte on peut afficher la page
?>
Comment doit-je procéder exactement SVP? Chargé la valeur du form dans la SESSION.
Modifié le 18 oct. 2017 à 22:24
si tu souhaites une réponse précise, n'hésite pas à poser une question précise en donnant des faits, en partageant ton code.
(modifié comme signalé par jordane (bonjour&merci))
18 oct. 2017 à 22:00