Rechercher : dans
Par :

Passer un paramètre à une frame

Dernière réponse le 10 déc 2007 à 09:08:25 spinta, le 5 déc 2007 à 09:52:42 
 Signaler ce message aux modérateurs

Bonjour,

J'ai actuellement un site avec des frames que je désire garder. Le fichier index.htm définit donc ses frames avec par exemple :

<frame src="http://www.monsite.fr/mon_site_dynamique">

Je voudrais simplement pouvoir lancer mon site via :

http://www.monsite.fr/index.htm?idparam=12

par exemple et récupérer ce paramètre afin que la source de ma frame devienne :

<frame src="http://www.monsite.fr/mon_site_dynamique?idparam=12">

J'ai réussi à faire quelque chose en javascript qui fonctionne pour une iframe avec quelque chose du genre :

<iframe name="ma_frame" src=... ></iframe>
<script type="text/javascript" language="javascript">
<!--
var param_frame=window.location.search;
window.ma_frame.location="http://www.monsite.fr/mon_site_dynamique"+param_frame;
// -->
</script>

Mais je n'arrive pas à faire quelque chose qui fonctionne avec une frame...

Avez-vous une solution simple ?

Merci

Configuration: Windows XP
Internet Explorer 7.0

Meilleures réponses pour « passer un paramètre à une frame » dans :
Bash - Les paramètres VoirIntroduction Les paramètres positionnels Exemple 1 Les paramètres spéciaux Exemple 2 Initialiser des paramètres - La commande "set" - Exemples - La commande "shift" - Exemple 3 Introduction Il est possible de fournir à un script,...
[Mozilla Firefox] Sauvegarder les paramètres VoirSauvegarder / Restaurer les paramètres de Firefox, les marque-pages, historique et les extensions installées Commencez par afficher les fichiers cachés. Sous Vista, il faut s'approprier le dossier C:\users\Utilisateur*\Application Data pour...
Facebook - Changer son mot de passe VoirPour changer son mot de passe sur Facebook, il suffit de suivre la procédure suivante : 1- Ouvrir Facebook 2- Cliquer sur "Paramètres" en haut à droite 3- Cliquer sur "Modifier" dans la catégorie "Mot de passe". 4- Changer le mot de passe

1

slum-dunk, le 5 déc 2007 à 09:59:55
  • +1

Montre un peu ce ke tu as démaré.

Répondre à slum-dunk

2

spinta, le 5 déc 2007 à 10:15:36

Je pense que le problème vient qu'une iframe fait partie du BODy et donc le javascript s'exécute bien et mets à jour la source de l'iframe.
Mais dans le cas d'une frame je ne peut pas mettre de javascript dans le frameset. (En fait il ne s'exécute pas).
Je ne sais pas alors ou le placer pour qu'il s'éxécute...

Répondre à spinta

3

slum-dunk, le 5 déc 2007 à 10:21:25

Essaye une solution php??genre:

<?php
echo"<script type=\"text/javascript\" >
<!--
var param_frame=window.location.search;
window.ma_frame.location=\"http://www.monsite.fr/mon_site_dynamique\"+param_frame;
// -->
</script>";
?>

Répondre à slum-dunk

4

spinta, le 5 déc 2007 à 15:21:19

J'ai essayé ta solution php mais celà ne fonctionne pas non plus.
Mais je ne comprends pas pourquoi elle aurait fonctionné...

En tout cas merci d'essayer de me trouver une solution... Je continue mes recherches en parallèle sur le net... et si je trouve quelque chose je l'ajouterai sur ce forum.

Répondre à spinta

5

slum-dunk, le 5 déc 2007 à 15:27:38

Que donne la page kom erreur??

Répondre à slum-dunk

6

spinta, le 5 déc 2007 à 15:42:28

La page ne donne aucune erreur !!
J'ai tout simplement le src par défaut défini dans le fichier index.
C'est comme si les lgines ne font rien. (Pour info si je mets un alert("test") je n'est pas d efenêtre d'info qui s'affiche, le code javascript ne s'exécute pas, c'est tout.

Répondre à spinta

7

slum-dunk, le 5 déc 2007 à 15:53:56

Balance le code je vois.

Répondre à slum-dunk

8

spinta, le 5 déc 2007 à 16:37:21

Voilà le code un mon index.htm (je l'ai bien sur simplifié...) :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<frameset cols="100%,*">
<frame name="centre" src="http://www.directwine.fr/WD110AWP/WD110AWP.EXE/CONNECT/directwine_11">
<script type="text/javascript">
<!--
var url_frame=window.location.search;
window.centre.location="http://www.directwine.fr/WD110AWP/WD110AWP.EXE/CONNECT/directwine_11"+url_frame;
alert(url_frame);
// -->
</script>
</frameset>
</HTML>

Répondre à spinta

9

slum-dunk, le 5 déc 2007 à 16:51:45

Dis c'est un probléme de récupération des paramétres ki se pose ou bien c'est l'envoi du paramétre?

Répondre à slum-dunk

10

slum-dunk, le 5 déc 2007 à 17:21:45

Je dois partir on se donne RV demain .d'ici là essaye ça:

faudrait ke tu passe en php pour ton index.htm.fau juste changer l'extension-->index.php:

le blem ki va se poser est ke tu ne peux pas integrer du php dans du javascript.seul le contraire est possible.

essaye déjà de passer tes pages en php,demain la suite!

Répondre à slum-dunk

11

spinta, le 6 déc 2007 à 17:12:52

J'ai trouvé une solution :

<frameset cols="100%,*">
<?php
$arg = "http://www.directwine.fr/WD110AWP/WD110AWP.EXE/CONNECT/directwine_11?idparam=".$_GET['idparam'];
print "<frame src=\"$arg\">";
?>
<noframes>

ainsi si on affiche la page index.php?idparam=12, le code php récupère la valeur 12 et la transmet bien à la page de la frame.

Bien sur il faudrait pofiner en utilisant des isset...

Répondre à spinta

12

slum-dunk, le 10 déc 2007 à 08:38:20

T'as résolu le blem maintenant??

Répondre à slum-dunk

13

spinta, le 10 déc 2007 à 08:58:07

Oui j'ai résolu le problème comme je l'ai indiqué sur le forum. En fait j'ai utilisé la solution suivante qui permet de récupérer tous les paramètres d'un coup :

<?php
list($url, $param) = explode("?", $_SERVER['REQUEST_URI']);
$arg = "http://www.directwine.fr/WD110AWP/WD110AWP.EXE/CONNECT/directwine_11?".$param;
print "<frame src=\"$arg\">";
?>

Répondre à spinta

14

 slum-dunk, le 10 déc 2007 à 09:08:25

Super mes félicitations! Et du courage!

Répondre à slum-dunk
Collection CommentÇaMarche.net