Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
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 03/10/2011, 02h22   #1
Invité régulier
 
Inscription : août 2007
Messages : 34
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 34
Points : 6
Points : 6
Par défaut Stocker les données envoyées par le formulaire en session

salut tout le monde ca fait 2 mois que je suis trompé avec ce code maintenant je viens a vous !

comme ca je vais bien expliqué mon code

ce 1er code dans la page (domaine.php) pour sélectionner les domaines et l envoyé a la page suivant (panier.php) avec la method POST

1er code : c'est des array >
Code html :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<input name='domain[]' type='hidden' value='domaine1.com'>
<select name='time[]'>
<option value='1'>1 an</option>
<option value='2'>2 ans</option>
<option value='3'>3 ans</option>
</select>
 
<input name='domain[]' type='hidden' value='domaine2.com'>
<select name='time[]'>
<option value='1'>1 an</option>
<option value='2'>2 ans</option>
<option value='3'>3 ans</option>
</select>


2eme code dans la page panier
Code :
1
2
3
4
5
6
7
8
 
$time=$_POST['time'];
$domain=$_POST['domain'];
 
foreach ($domain as $key=>$value) {
	$temps=$_POST['time'][$key];
	$_SESSION['domains'][$value]=$temps;
 }

voila mon code mais quand y-a 2 arry il me donne 4 quand y-a 4 il me donne 8 pffff difficile a expliqué mais svp juste me corrigé ce code Merciii
dajij est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/10/2011, 02h46   #2
Membre Expert
 
Avatar de Seb33300
 
Homme Sébastien Alfaiate
Développeur Web
Inscription : janvier 2007
Messages : 1 329
Détails du profil
Informations personnelles :
Nom : Homme Sébastien Alfaiate
Âge : 26
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : janvier 2007
Messages : 1 329
Points : 1 657
Points : 1 657
Quand il y a 4, il te donne 8 ?

Mais tu parles de quoi quand tu dis ça ?
__________________
Zend Certified Engineer PHP 5.3

« Crois-tu comprendre le monde juste en matant le 20H Ou connaître l'histoire en ayant lu que l'angle des vainqueurs ? » Keny Arkana
Seb33300 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/10/2011, 12h39   #3
Invité régulier
 
Inscription : août 2007
Messages : 34
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 34
Points : 6
Points : 6
Quand y-a 2 arry il me donne 4 session tu peux me corrigé svp ce code
dajij est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/10/2011, 12h49   #4
Expert Confirmé
 
Avatar de Séb.
 
Inscription : mars 2005
Messages : 2 823
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations professionnelles :
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2005
Messages : 2 823
Points : 3 454
Points : 3 454
Je ne comprends pas bien le pb, mais moi je ferais :

Code html :
1
2
3
4
5
6
7
8
9
10
11
<select name='time[domaine1.com]'>
<option value='1'>1 an</option>
<option value='2'>2 ans</option>
<option value='3'>3 ans</option>
</select>
 
<select name='time[domaine2.com]'>
<option value='1'>1 an</option>
<option value='2'>2 ans</option>
<option value='3'>3 ans</option>
</select>

Puis :

Code :
1
2
3
foreach ( $_POST['time'] as $domain => $time ) {
    $_SESSION['domains'][$domain] = $time ;
}
__________________
Un problème exposé clairement est déjà à moitié résolu
Keep It Smart and Simple
Séb. est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 03/10/2011, 13h12   #5
Invité régulier
 
Inscription : août 2007
Messages : 34
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 34
Points : 6
Points : 6
MERCI pour ton aide

j'ai utiliser ton propre code
mais quand je fait
Code :
print_r($_SESSION['domains']);

il me donne

Code :
Array ( [0] => domaine1.com [1] =>domaine2.com )
je peux pas récupéré le temps $time ?
dajij est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/10/2011, 13h31   #6
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 991
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 991
Points : 5 029
Points : 5 029
Personnellement j'aurais procédé comme suit:
Code :
1
2
3
4
if (!isset($_SESSION['domains'])) $_SESSION['domains'] = array();
foreach ( $_POST['time'] as $domain => $time ) {
    $_SESSION['domains'][$domain] = $time ;
}
__________________
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
Vieux 03/10/2011, 13h49   #7
Expert Confirmé
 
Avatar de Séb.
 
Inscription : mars 2005
Messages : 2 823
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations professionnelles :
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2005
Messages : 2 823
Points : 3 454
Points : 3 454
Citation:
Envoyé par dajij Voir le message
MERCI pour ton aide

j'ai utiliser ton propre code
mais quand je fait
Code :
print_r($_SESSION['domains']);

il me donne

Code :
Array ( [0] => domaine1.com [1] =>domaine2.com )
je peux pas récupéré le temps $time ?
As-tu adapté le formulaire ?
__________________
Un problème exposé clairement est déjà à moitié résolu
Keep It Smart and Simple
Séb. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/10/2011, 14h12   #8
Invité régulier
 
Inscription : août 2007
Messages : 34
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 34
Points : 6
Points : 6
j'ai utiliser encore ton code il me donne le temps c'est 6 ans et l'autre Array c 10 ans mais tu vois y-a [0] => domain1.com [1] => domain2.com est je veux récupéré que [domain1.com] => 6 [ domain2.com] => 10

code
Code :
1
2
3
4
5
 
if (!isset($_SESSION['domains'])) $_SESSION['domains'] = array();
foreach ( $_POST['time'] as $domain => $time ) {
    $_SESSION['domains'][$domain] = $time ;
}
résultat
Code :
1
2
 
Array ( [0] => domain1.com [1] => domain2.com [domain1.com] => 6 [ domain2.com] => 10 )
Merci de vos effort
dajij 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 19h09.


 
 
 
 
Partenaires

Hébergement Web