[PHP]Passer 2 variables dans l'URL

Fermé
Caro - 11 août 2005 à 10:58
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 - 12 août 2005 à 16:33
Salut tout le monde !

Voilà, j'aimerai passer deux variables dans mon URL, voici mon code :

function appel() {
     location.href="materielsOccas.shtml?tbl2="+tb1.options    [tb1.selectedIndex].value ; 
 }


appel() est une fonction en javascript, j'aimerai passer la variable 'toto' ayant la valeur 'tb1.options [tb1.selectedIndex].text ;' Mais je vois pas du tout comment faire

Un grand merci d'avance !
A voir également:

17 réponses

tom@ Messages postés 202 Date d'inscription lundi 21 mars 2005 Statut Membre Dernière intervention 15 juin 2022 50
11 août 2005 à 11:16
Salut
pourquoi ne pas passer une variable avec php sans fonction javascript (les pseudo frames: http://www.phpdebutant.org/article68.php).
<a href="url(page.php)?parametre1=valeur1">lien</a>
Dans ta page page.php, recupere les valeurs avec:
$param1=$_GET['parametre1'];

A+,
tom
1
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
11 août 2005 à 11:17
Disons qu'apparemment les valeurs sont dans un champ de sélection pour l'utilisateur, d'où ma proposition de les transmettre par soumission de formulaire ;)
0
Merci encore de la réponse, c'est sympa !!

Ca marche plus. En faisant :

function appel()
   { location.href="materielsOccas.shtml?tbl2="+tb1.options[tb1.selectedIndex].value;  }


select :

<select name="tb1" onchange="appel();">
<option selected>-- Veuillez faire votre choix --</option>
<option value="valeur1">Nom de l'option1</option>
<option value="valeur2">Nom de l'option2</option>
</select>


ça marche très bien, du moins j'arrive à récupérer la 'value', mais maintenant je souhaiterai récupérer le nom de l'option, d'ou ma question du départ, comment passer deux variables dans mon url :)

@ller, bon appétit ;)
1
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
11 août 2005 à 11:14
Salut,

Je suppose qu'apparemment la valeur de ton toto est celle que l'utilisateur sélection dans un champ formulaire <select></select>.

Donc ce ne serait pas plus simple de l'envoyer par forumlaire ?
0
Oui, en effet Erdnax, il s'agit bien de <select></select>

<select name="tb1" 
          onchange="appel();">


Qu'appel tu l'envoyer par formulaire ?

Je vais tester ta solution tom@

En tout cas un grand merci des réponses !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
11 août 2005 à 11:31
Ce qu'il faut que tu fasse, si ce n'est pas déjà fait ;), c'est que tu entoure tes balises <select> et </select> par <form> et </form> de manière à ce que ça te donne quelque chose comme ça :
<form action="materielsOccas.shtml" method="get">
<select name="tb1">
<option value="valeur1">Nom de l'option1</option>
<option value="valeur2">Nom de l'option2</option>
etc...
</select><br>
<input type="submit" value="Envoyer">
</form>
De cette manière, lorsque le visiteur aura choisi son option et cliqué sur le bouton Envoyer, ta page materielsOccas.shtml devrait recevoir les données par l'url ;)

@+
0
haa... je vois ce que tu voulais dire. Mais en faite, j'ai besoin que l'action se passe dés que la personne sélectionne une ligne dans la liste, pour qu'ensuite la value de cette ligne serve de variable pour une requête. Ton idée est très bonne, mais dans mon cas ne peut fonctionner

Merci des réponses !!
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
11 août 2005 à 11:58
Lol, alors le javascript était une bonne idée ;)

Tu peux essayer ça :
function appel() {
window.location.href="materielsOccas.shtml?tbl2="+document.monform.tb1.options.selectedIndex.value; 
}
Et pour ton select, fais-le comme ça :
<form name="monform">
<select name="tb1" onchange="appel();">
<option selected>-- Veuillez faire votre choix --</option>
<option value="valeur1">Nom de l'option1</option>
<option value="valeur2">Nom de l'option2</option>
</select>
</form>
Qu'est-ce que ça donne ?
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
11 août 2005 à 12:50
Lol, ben je crois que je viens de comprendre ton problème ^^

En fait, maintenant il me semble que c'est assez simple :
location.href="materielsOccas.shtml?tbl2="+tb1.options[tb1.selectedIndex].value + "&tbl2titre=" +tb1.options[tb1.selectedIndex].text;
Tu remarqueras que j'ai du modifier le second tbl2 en rajoutant titre, afin que l'on puisse distinguer le nom des deux variables transmises.
0
cool... alors là, merci beaucoup, ça marche nickel !!! ;)

Bonne journée, et encore merci !
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
11 août 2005 à 14:20
De rien, désolé d'avoir mis si longtemps à comprendre ce que tu voulais ;) ^^ :P
0
C'est encore moi ;)

Je me demandais si on pouvais passer une variable PHP dans une fonction javascript, voici mon code :

function appel2()

{ location.href="materielsOccas.shtml?typeProduit="+typeProd.options[typeProd.selectedIndex].value + "&contenu=" +typeProd.options[typeProd.selectedIndex].text + "&mark="+tabloMarque.options[tabloMarque.selectedIndex].text + "&inter1="$inter1; }</code>

Bon, je sais que ce que j'ai fait ça marche pas, mais c'est pour vous montrer mon idée.
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
12 août 2005 à 12:02
Re,

Presque tout est faisable ! et là, oui ;) comme ça :
<?php echo 'function appel2()
   { location.href="materielsOccas.shtml?typeProduit="+typeProd.options[typeProd.selectedIndex].value + "&contenu=" +typeProd.options[typeProd.selectedIndex].text + "&mark="+tabloMarque.options[tabloMarque.selectedIndex].text + "&inter1="'.$inter1.';  }';
@+
0
Mais oui, chuis cruche... Bref, re merci beaucoup !!!!
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
12 août 2005 à 12:47
Eheh cruche ou pas, c'est po grave ^^

L'imortant c'est de trouver, ou de faire rappeller certaines choses ;)
0
Bon, tu vas me prendre pour une neuneu, mais ça marche po :(

voilà mon code :

<?
$pass = "juste un test";

<script type="text/javascript">
   
   $ctt= 'function appel2()
   { location.href="materielsOccas.shtml?typeProduit="+typeProd.options[typeProd.selectedIndex].value + "&contenu=" +typeProd.options[typeProd.selectedIndex].text + "&mark="+tabloMarque.options[tabloMarque.selectedIndex].text + "&inter1="+'.$pass.';  }
  
</script>';

?>


En faite j'utilise des modules fait par mon maitre de stage, donc je dois mettre tout le code html dans la variable $ctt. J'ai testé 36000 trucs mais à chaque fois Internet Explorer me dit qu'il y a des erreurs comme : ';' attendu franchement je vois pas ou.
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
12 août 2005 à 15:52
Allez, une petite aide, un mot clé, dis moi si tu trouves :

echo

^^
0
Oui, je l'avais vu :) je l'ai mis mais ça marchait pas (j'ai du mal le placer) mais je viens juste de trouver à l'instant une solution :

 function appel2()
   { location.href="materielsOccas.shtml?typeProduit="+typeProd.options[typeProd.selectedIndex].value + "&contenu=" +typeProd.options[typeProd.selectedIndex].text + "&mark="+tabloMarque.options[tabloMarque.selectedIndex].text + "&inter1='.$pass.' ";   }


En faite, il fallait mettre la variable avant le guillement .
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
12 août 2005 à 16:06
Alors c'est tout bon ou c'est-y po tout bon ?
0
C'est complètement tout bon ;)
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
12 août 2005 à 16:17
Alors c'est complètement trop cool. Si t'as encore un problème, hésite pas ;)

@+

P.S. t'as une adresse ou on peut voir tout ça.
0
Merci, t'es très sympa !!
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
12 août 2005 à 16:28
Une 'tite adresse où on peut voir ce que ça donne ? :)
0
hélas pas encore, là je fais un site marchand mais je suis loin de l'avoir fini.
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
12 août 2005 à 16:33
Oki, no prob ;)

@+
0