Accueil > > > TRANSMITION DES ARGUMENTS VERS UNE PAGE DANS UNE FRAME
TRANSMITION DES ARGUMENTS VERS UNE PAGE DANS UNE FRAME
Information sur la source
Description
L'autre jour, je crée une page avec des frame et dans l'une de ces frames se trouve une page php chargée de traiter les paramètres d'un formulaire. Problème, la page faisant partie d'une frame, c'est la page "parent" qui reçoit les info et ne les redistribue pas.
J'ai donc fait ce petit bout de code que l'on viendra mettre en tout début de page avant la balise HTML. Le code se charge de récuperer toutes les valeurs avec leurs noms respectifs, et de les concatener dans une chaine de caractères que l'on peut ainsi inclure dans l'URL de la page dans la frame.
!!!ATTENTION: ce source pour sous débutant ne s'applique pas au traitement des arguments complexes de type array, ou objet...
Il est destiné à manipuler des arguments de type text et numéraire.
example: test.php?num_tel=0000000000&ref=abcdefg&type_annon ce=1&type_bien=2
Il manque cruellement un contrôle des données pour ne traiter que les arguments du type attendu (cf. source de kankrelune dans son post du 14/12/2006)
Source
- <?php
- /*
- $_GET, $_POST: tableaux contenant toutes les valeurs en provenance d'un formulaire ou d'une injection manuelle dans l'URL
- params: chaine de caractères pouvant être collée au bout de l'URL du document dans la frame
- */
-
- $params = ""; // initialisation de la chaine de caractère
-
-
- if (!empty($_GET)) { // on verifie s'il y a des valeur dans $_GET
- reset($_GET); // on s'assure que le pointeur interne est bien au début
- $params = "?" . key($_GET) . "=" . current($_GET); // on traite le premier argument ("?")
- next($_GET); // on deplace le pointeur interne sur l'élément suivant
- while (list($key, $val) = each($_GET)) {
- $params .= "&" . $key . "=" . $val; // puis séquencielement le reste du tableau
- }
- }
-
- if (!empty($_POST)) { // on verifie s'il y a des valeur dans $_POST
- reset($_POST); // on s'assure que le pointeur interne est bien au début
- // si $params est vide, c'est que $_GET etait vide donc le premier élément de $_POST devra avoir "?"
- if ($params == "") $params = "?" . key($_POST) . "=" . current($_POST); // avec "?"
- else $params .= "&" . key($_POST) . "=" . current($_POST); // avec "&"
- next($_POST); // on deplace le pointeur interne sur l'élément suivant
- while (list($key, $val) = each($_POST)) {
- $params .= "&" . $key . "=" . $val; // puis séquencielement le reste du tableau
- }
- }
-
- ?>
- <HTML>
- <HEAD>
- </HEAD>
- <BODY>
- <FRAMESET cols="250,250,*">
- <FRAME src="mapage1.php<?php echo params; ?>"> <--! transmition des paramètres -->
- <FRAME src="mapage2.php">
- <FRAME src="mapage3.php">
- </FRAMESET>
- </BODY>
- </HTML>
<?php
/*
$_GET, $_POST: tableaux contenant toutes les valeurs en provenance d'un formulaire ou d'une injection manuelle dans l'URL
params: chaine de caractères pouvant être collée au bout de l'URL du document dans la frame
*/
$params = ""; // initialisation de la chaine de caractère
if (!empty($_GET)) { // on verifie s'il y a des valeur dans $_GET
reset($_GET); // on s'assure que le pointeur interne est bien au début
$params = "?" . key($_GET) . "=" . current($_GET); // on traite le premier argument ("?")
next($_GET); // on deplace le pointeur interne sur l'élément suivant
while (list($key, $val) = each($_GET)) {
$params .= "&" . $key . "=" . $val; // puis séquencielement le reste du tableau
}
}
if (!empty($_POST)) { // on verifie s'il y a des valeur dans $_POST
reset($_POST); // on s'assure que le pointeur interne est bien au début
// si $params est vide, c'est que $_GET etait vide donc le premier élément de $_POST devra avoir "?"
if ($params == "") $params = "?" . key($_POST) . "=" . current($_POST); // avec "?"
else $params .= "&" . key($_POST) . "=" . current($_POST); // avec "&"
next($_POST); // on deplace le pointeur interne sur l'élément suivant
while (list($key, $val) = each($_POST)) {
$params .= "&" . $key . "=" . $val; // puis séquencielement le reste du tableau
}
}
?>
<HTML>
<HEAD>
</HEAD>
<BODY>
<FRAMESET cols="250,250,*">
<FRAME src="mapage1.php<?php echo params; ?>"> <--! transmition des paramètres -->
<FRAME src="mapage2.php">
<FRAME src="mapage3.php">
</FRAMESET>
</BODY>
</HTML>
Historique
- 15 décembre 2006 16:08:10 :
- Ré-écriture du source suite aux remarques (judicieuses) de kancrelune du 14/12/2006
- 15 décembre 2006 17:33:00 :
- mise à jour de la présentation du code
Sources du même auteur
Sources de la même categorie
VALIDATEUR DE FORMULAIREVALIDATEUR DE FORMULAIREJ'ai codé cet ensemble de classes pour accélérer la création de formulaire sans l'alourdir avec une classe la plus simple possible d'utilisation.
J'a...
par Reldan
SUIVI SERVICE CLIENT PHPSUIVI SERVICE CLIENT PHP Bonjour. Voici mon premier dev en PHP.
Il reste encore beaucoup de travail a faire, afin de le finir, en y incluant par exemple tout e la partie bas...
par hige52
POO - FORMULAIRE NEWSLETTER PHP - PROFESSEUR-PHP.COMPOO - FORMULAIRE NEWSLETTER PHP - PROFESSEUR-PHP.COM Il y a de nombreuses sources sur les formulaire de newsetter, je propose en plus la vidéo pour l'explication de la source, merci.
Voici le tutorial...
par mtrix000
SELECTEUR DE NOTESELECTEUR DE NOTEUne classe Php et le plugin jQuery correspondant pour un sélecteur de note simplissime d'utilisation.
Rien de bien novateur mais je n'ai pas trouvé d...
par Reldan
ESPACE MEMBRE , AVEC CASE OPTIONNEL , SANS MYSQLESPACE MEMBRE , AVEC CASE OPTIONNEL , SANS MYSQLvoici un espace membre qu'on peut qualifier de très simple, il n'utilise pas de bdd, ni mysql il est plus fait pour de petits sites, il n'y a rien d'a...
par sartoz
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Récupérer le résultat d'une fonction [ par BSide ]
Bonjour,dans un formulaire les utilisateurs doivent préciser une date qui est variable. La sélection de cette date se fait via un script qui propose u
Récupérer données formulaire + envoi par e-mail [ par kronprinz ]
Quelqu'un peut-il m'aider ?Je cherche comment récupérer des données dans un formulaire et me les envoyer par e-mail avec PHP. Pouvez-vous m'expliquer
Comment récupérer tous les items selectionner [ par fabiin ]
Salut,dans mon formulaire, j'ai une liste avec la propriété de plusisuers selection possible.Je voudrai savoir, après l'envoi du formulaire,comment ré
pb de frame [ par fmazoue ]
bon je va essayer d'etre clairj'ai une frame F1 pour un entete de formulairej'ai une frame F2 pour le reste du formulairedans F1 je saisi un numéro qu
pb de frame [ par fmazoue ]
voila le pb :j'ai une frame F1 avec le debut d'un formulairej'ai une frame F2 avec la fin du formulairedans f1 je saisi un numéro et je clic sur mon b
récupérer automatiquement un adresse email dans un formulaire envoyé en php3 [ par motosbikes ]
Bonjour, quelqu'un pourrait il me dire comment faire pour récupérer automatiquement l'adresse email d'une personne qui valide un formulaire envoyé sur
PHP: récupérer le champ d'un formulaire sans Bouton! [ par brahma ]
hello ,avec php: comment puis je récupérer la valeur d'un champ d'un formulaire, lorsque l'utilisateur me donne la main en passant par un lien hyperte
Récup données dans formulaire [ par MHI ]
Salut, Deux problème de récupération de données : Dans le cas suivant je souhaite récupérer le login par l'interméd
Help me, récuperer les données d'un formulaire et l'afficher dans une frame [ par xeon911 ]
Bonsoir, Ma question est très simple,J'arrive à récupérer les données d'un formulaire mais j'aimerai les afficher sur la part
Récupérer les infos d'un formulaire envoyé par mail [ par Osirex ]
Bonjour, J'aimerais me lancer dans le PHP. J'ai un ptit projet qui est le suivant : Je voudrais envoyer un mail en introduisant du code php dedans pou
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|