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 02/11/2007, 16h22   #1
Invité régulier
 
Inscription : mars 2007
Messages : 14
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Nord (Nord Pas de Calais)

Informations forums :
Inscription : mars 2007
Messages : 14
Points : 5
Points : 5
Envoyer un message via MSN à xplose
Par défaut [Cookies] Passage de 60 variables de JS à PHP

Bonjour,

Je vais essayer d'être simple et clair.

J'ai un fichier html contenant de nombreux input (listes déroulantes, radio... , en tout une soixantaine). J'ai besoin d'envoyer le contenu des champs vers une base de données MySQL.

J'ai essayé avec les variables de session PHP mais je n'ai pas réussi à leur attribuer la valeur des champs saisis (document.getElementById('xxx').value). Peut-être y a-t-il une solution de cette manière.....

J'ai ensuite pensé au passage dans l'url via formulaire ou autre, mais je crois bien que l'url est limité à 255 caractères...

Et enfin, bien que n'étant pas la solution la plus propre, j'ai voulu envoyer le tout par cookies. Là je me suis rendu compte que je ne pouvais pas en stocker plus de 50. Peut-être y a-t-il moyen de passer plus d'une variable par cookie (je ne m'y connais pas plus que ca en cookies).

J'ai entendu parler de JSON.. peut-être est-ce une piste intéressante, mais ce que je préfèrerais reste les variables session de php (mais comme je le disais plus haut, pas moyen de leur affecter la valeur des input)

Donc ma question est simple:
Comment envoyer plus de 50 variables ?

Merci d'avance !
xplose est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 16h26   #2
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
tu fais un formulaire et tu le passes en POST tout simplement.
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 16h28   #3
Membre éclairé
 
Avatar de Linio
 
Inscription : octobre 2005
Messages : 427
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 427
Points : 304
Points : 304
Comme koopajah, je vois pas le pb, même par session, tu peux largement stocker tout dans des variables de sessions...
__________________
Linio
Linio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 16h43   #4
Invité régulier
 
Inscription : mars 2007
Messages : 14
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Nord (Nord Pas de Calais)

Informations forums :
Inscription : mars 2007
Messages : 14
Points : 5
Points : 5
Envoyer un message via MSN à xplose
Merci à vous deux,
en fait le truc du formulaire je laisse tomber, je sais que je vais m'embrouiller. Mais pour ce qui est des variables session, je ne sais pas comment intégrer le js..

j'ai bien pensé à la solution:

<?php
$_SESSION['xxx']="<script language='javascript'>document.write(document.getElementById('xxx').value)</script>"
?>

mais lorsque je veux afficher la variable php, ca me retourne le code javascript...

j'ai du me planter mais je ne sais pas où...
xplose est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 16h44   #5
Candidat au titre de Membre du Club
 
Développeur informatique
Inscription : février 2007
Messages : 62
Détails du profil
Informations personnelles :
Âge : 25

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2007
Messages : 62
Points : 11
Points : 11
Pourquoi veut tu utiliser des variables de sessions ou des cookie?
<% Bastien %> est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 16h48   #6
Invité régulier
 
Inscription : mars 2007
Messages : 14
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Nord (Nord Pas de Calais)

Informations forums :
Inscription : mars 2007
Messages : 14
Points : 5
Points : 5
Envoyer un message via MSN à xplose
En fait je veux juste trouver un moyen de passer mes variables.. après si j'y arrive, je serai content... c'est tout!

=)
xplose est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 16h50   #7
Candidat au titre de Membre du Club
 
Développeur informatique
Inscription : février 2007
Messages : 62
Détails du profil
Informations personnelles :
Âge : 25

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2007
Messages : 62
Points : 11
Points : 11
C'est pas compliqué avec les $_POST.

Regarde un extrait d'un script que javais fait pour un gros formulaire :

Code :
1
2
3
4
5
6
7
8
9
10
11
 
foreach($_POST as $cle=>$val) {
	if($val == "") $$cle = "Non Renseigné";
        else $$cle = trim($val);
}
$sql = "INSERT INTO `candidature` VALUES('','$nom','$prenom','$date_naissance','$adresse','$cp','$ville','$tel_dom','$tel_mobile','$tel_autre','$mail'".
					",'$situation','$nb_enfant','$pro_conjoint','$diplome1','$diplome2','$diplome3','$diplome4','$annee_diplome1','$annee_diplome2','$annee_diplome3','$annee_diplome4'".
					",'$dateE_S1','$dateE_S2','$dateE_S3','$dateE_S4','$nom_adresse_ent1','$nom_adresse_ent2','$nom_adresse_ent3','$nom_adresse_ent4','$poste1','$poste2'".
					",'$poste3','$poste4','$profession','$nom_ent','$adr_ent','$cp_ent','$ville_ent','$desc_poste','$decouvert','$valeur_autre','$region_implantation','$enseigne','$nom_enseigne'".
					",'$developpement','$type_dev','$echeance','$renseignement','$lieu','$date','$confirme')";
					if( mysql_query($sql)) {
<% Bastien %> est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2007, 18h32   #8
Membre actif
 
Avatar de fenkys
 
Inscription : octobre 2007
Messages : 157
Détails du profil
Informations personnelles :
Âge : 45

Informations forums :
Inscription : octobre 2007
Messages : 157
Points : 181
Points : 181
Ce que tu cherches à faire ne peut pas marcher, pour une raison simple :
PHP est un langage de script coté serveur
Javascript est un langage de script coté client.

Quand le PHP s'execute, le Javascript n'est qu'une suite de caractère sans signification. Quand le javascript s'execute, il n'y plus trace de PHP dans ta page.

<?php
$_SESSION['xxx']="<script language='javascript'>document.write(document.getElementById('xxx').value)</script>"
?>

Ce bout de code fait appel à deux fonctions qui ne sont pas definies au même moment. Ta variable _SESSION['xxx'] va contenir le texte source de ton script javascript et à l'execution du javascript tu vas bien retirer le code de l'élément d'id xxx mais pour l'afficher, pas pour le stocker dans une variable PHP.

En fait, les données du formulaire ne sont connues que du seul navigateur Web. Pour que ton script PHP en prenne connaissance, tu dois les envoyer selon les méthodes decrites plus haut.
fenkys 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 04h40.


 
 
 
 
Partenaires

Hébergement Web