Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
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/01/2012, 15h17   #1
Invité régulier
 
Inscription : juillet 2009
Messages : 58
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 58
Points : 9
Points : 9
Par défaut Formulaire avec sessions

Bonjour,
Je reviens faire appel à vous parce que je dois construire un formulaire sur plusieurs pages, notamment des pages adresses facturation et livraison qui peuvent être identiques.
Comment est-ce que je peux récupérer sur mon formulaire adresse facturation les variables en session adresse livraison et les afficher dans les champs de mon formulaire facturation ? De plus, il faudrait que je réalise une condition pour permettre la modification de ces infos si elles diffèrent de celles présentes dans la session. Est-ce que vous pouvez m'indiquer la meilleure marche à suivre, je ne trouve pas de tutos qui m'aide à me débrouiller.
Merci beaucoup


Voici mes variables en début de code :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
<?php
session_start(); // En premier dans la page 
 
 
if (isset($_POST['email'])) {
    $_SESSION['email'] = $_POST['email'];}
if (isset($_POST['titre'])) {
    $_SESSION['titre'] = $_POST['titre'];}
if (isset($_POST['nom'])) {
    $_SESSION['nom'] = $_POST['nom'];}
if (isset($_POST['prenom'])) {
    $_SESSION['prenom'] = $_POST['prenom'];}
if (isset($_POST['password'])) {
    $_SESSION['password'] = $_POST['password'];}
 
 
if (isset($_POST['labs'])) {
    $_SESSION['company'] = $_POST['company'];}
if (isset($_POST['adress'])) {
    $_SESSION['adress'] = $_POST['adress'];}
if (isset($_POST['bat'])) {
    $_SESSION['bat'] = $_POST['bat'];}
if (isset($_POST['code_postal'])) {
    $_SESSION['code_postal'] = $_POST['code_postal'];}
if (isset($_POST['ville'])) {
    $_SESSION['ville'] = $_POST['ville'];}
if (isset($_POST['pays'])) {
    $_SESSION['pays'] = $_POST['pays'];}
if (isset($_POST['tel'])) {
    $_SESSION['tel'] = $_POST['tel'];}
if (isset($_POST['fax'])) {
    $_SESSION['fax'] = $_POST['fax'];}
Après je dois mettre ma condition qui vérifie si l'utilisateur souhaite taper une nouvelle adresse de facturation dont les données des champs seront enregistrés dans une autre base.




Et l'affichage dans le formulaire avec la gestion des erreurs :
Code :
1
2
3
4
5
6
 
<tr>
    	<td width="89"> <label for="company" class="TexteLogin">Company : </label></td>
		<td width="175"><input name="company" type="text" class="loginRemplissage" SIZE="30" value="<?php if (isset($_POST['company'])) echo htmlentities(trim($_POST['company'])); ?>"/></td>
  		<td width="364" class="error2">&#160;<?php echo $erreurs["company"]["msg"]; ?></td>
  		</tr>
Merci
LiliValerie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2012, 15h57   #2
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 3 018
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 : 3 018
Points : 5 081
Points : 5 081
Pour l'importation des variables $_GET et $_POST en session tu devrais utiliser les filtres.

Code :
1
2
3
4
5
$_SESSION['form_data'] = filter_input_array(INPUT_POST, array(
  'email' => FILTER_SANITIZE_EMAIL,
  'titre' => FILTER_SANITIZE_STRING,
  ...
));
Pour utiliser ensuite une variable de session c'est tout bêtement:
Dans ton cas
Code :
<input type="text" name="email" value="<?=$_SESSION['form_data']['mail']?>" />
Tu devrais juste préremplir la session avec des donnés vides, ça t'évitera de devoir les vérifier pour affichage.
__________________
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 00
Vieux 24/01/2012, 16h10   #3
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 3 018
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 : 3 018
Points : 5 081
Points : 5 081
Regarde par là: http://php.developpez.com/cours/?page=securite#sessions
__________________
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 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h11.


 
 
 
 
Partenaires

Hébergement Web