Rechercher : dans
Par :

Php : passage de paramètres variables par URL

Dernière réponse le 21 aoû 2009 à 19:07:56 RideZeBigOne, le 18 sep 2004 à 22:07:00 
 Signaler ce message aux modérateurs

Bonjour à tous!

j'ai cherché dans les posts précédent une réponse à ma question sans succès.

voila, j'aimerai passer des variables en paramètres via l'URL. cependant je ne trouve pas comment passer les variables dans mon cas : j'aimerai passer des paramètres dont je ne connais pas la valeur.

j'ai essayer :
<a href="ajout_spot.php?spot=$spot>Envoyer Spot</a>

mais dans ajout_spot.php je récupère comme valeur dans $spot la chaine de caractère "$spot" au lieu du contenu de cette variable.
à partir de cette ligne de code (au cas où) :
<?php echo "$spot"; ?>

Ce type de passage de paramètres est-il possible? si non quelle solution me reste-il?

merci d'avance!

RideZeBigOne
www.sport2oufs.fr.st

Meilleures réponses pour « Php : passage de paramètres variables par URL » dans :
[PHP] Notice: Undefined index: VoirSi vous utilisez les tableaux $_POST ou $_GET pour récupérer les variables de vos formulaires ou autres, il se peut que vous tombiez sur cette erreur: Notice: Undefined index 'champs du tableau' in 'chemin du fichier php en cours d'execution' on line...
PHP - Les variables VoirConcept de variable avec PHP Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage PHP peuvent être de trois...

1

dedale82, le 18 sep 2004 à 22:12:09

Salut,
essaye :
<a href="ajout_spot.php?spot=<?$spot?>">

tiens moi au courant.

Répondre à dedale82

4

RideZeBigOne, le 21 sep 2004 à 23:20:24

Ca n'a pas l'air de fonctionner... l'idée est bonne mais j'obiens une variable sans valeur mais c'était bien tenté!!

merci :)

Répondre à RideZeBigOne

2

jisisv, le 19 sep 2004 à 06:36:00

Plus propre

<?php
//...

printf ("<a href=\"ajout_spot.php?spot=%s?\">ici</a>" , $spot );
//...

?>

Et ensuite tu accèdes au paramètre:
if(isset($_GET["spot"]))
{
    dosomething();
} else
{
    somethingelse();
}

Gates gave you the windows.
GNU gave us the whole house.(Alexandrin)

Répondre à jisisv

5

RideZeBigOne, le 21 sep 2004 à 23:26:22

Ca a presque marché!!

en fait je suis un peu exigeant... le contenu de $spot varie suivant ce que sélectionne l'utilisateur dans une liste déroulante.
la valeur renvoyée est toujours fixe (la dernière dans la liste d'ailleurs générée en php..)

je creuse de ce coté! merci ;)

Répondre à RideZeBigOne

20

 Pierre, le 21 aoû 2009 à 19:07:56

Un grand merci pour ton explication qui vient de m'être très utile.

Pierre.

Répondre à Pierre

3

jomeo, le 19 sep 2004 à 12:56:01

Vous vous prenez la tête pour faire quelquechose de vraiment facile :


<?php

// ...

print("
<a href=\"ajout_spot.php?spot=$spot\">Ton lien</a>
");

// ...

?>



Si tu as envoyé la chaîne de caractères "$spot" c'est que tu devais avoir commis une erreur au niveau d'un double quot ( = ")

Répondre à jomeo

6

RideZeBigOne, le 21 sep 2004 à 23:59:40

Salut!!

meme rq que pour ton prédécesseur... ca fonctionne mais j'obtiens tjrs la meme valeur, celle générée au moment de l'éxécution de la page php sur le serveur...

Finalement, j'ai fait autrement : plusieurs formulaire de type POST qui renvoient vers une meme page les valeurs des champs saisies par l'utilisateur.

car g plusieurs champs renseignés par l'utilisateur.

vous pouvez voir ma page en cours de travaux ici :
http://www.sport2oufs.fr.st/stat/index.php?pg=requete

toutes les requetes ne fonctionnent pas encore, mais la surface de voile en fonction de la region/spot affiche des courbes (je dois remplir ma base qd j'aurai qqle chose de débrouillé)
merci à tous
RideZeBigOne

Répondre à RideZeBigOne

7

valentin, le 22 sep 2004 à 10:16:30
  • +1

Il fo que tu fasse une balise form

<form name="maform" action="ton url sans les variable">

// hidden (caché) permet d'envoyé en variable sans la demander a l'utilisateur

<input type=hidden name="blabla" value=$spot>

//tu as un select, c ça ? si c le cas, tu fais

<select name="blabla" onchange = "javascript:fontion_qui_change_la_valeur_de_la_variable_hidden>
...
</select>

// puis la fonction envoyé javascript

</form>

tiens moi au courant, si ça a résolu ton pb ou pas

Répondre à valentin

8

gory, le 16 nov 2006 à 22:13:48
  • +1

Voici un ti ex qui pour peu être répondre à ta question




index.php?Body=<?php print "$Body" ?>

Répondre à gory

9

beatrice, le 30 nov 2006 à 16:06:40

Je cherchais moi aussi ou était mon erreur et j'ai lu vos post. J'ai résolu en prenant ce dernier exemple de gory mais en retirant les guillemets (sinon on a la chaine $body au lieu de la variable):

index.html?Body=<?php echo $Body ?>

et là, ca marche.

Merci de vos conseils. pour une fois que c'est moi qui donne une réponse... je suis fière !!

Répondre à beatrice

10

beatrice, le 30 nov 2006 à 16:52:43

Petite précision : j'ai changé ma page html de destination en page php, sinon je n'arrivais pas à récupérer ma variable (même si elle s'affichait bien dans l'url):

index.php?Body=<?php echo $Body ?>

et cette fois, c'est bon.

Répondre à beatrice

11

laurent17300, le 30 jui 2007 à 10:31:03

J'aurai aimé plus de détail qu'un petit bou de code...
J'ai le même problème et je suis bien moins fort que RideZeBigOne et je ne sais pas où placer ce code

Répondre à laurent17300

12

fil1958, le 30 jui 2007 à 11:20:01

@ RideZeBigOne

Tu envoies ta variable comme ceci

<a href="ajout_spot.php?spot=<?php echo $spot ?>">Envoyer Spot</a> 


Et tu la récupères dans ajout_spot.php comme ceci

$spot = ($_GET['spot']);
echo $spot;

Répondre à fil1958

13

amifet, le 4 jan 2008 à 15:54:49

Essaie celle la ça doit marché :
<a href="ajout_spot.php?spot=<?php echo "$spot"; ?>>Envoyer Spot</a>
tient moi aucourant

Répondre à amifet

14

Alex28500, le 15 jan 2008 à 17:30:51

Essaye ceci :

<a href="ajout_spot.php?spot="<? echo $spot; ?>>Envoyer Spot</a>

Répondre à Alex28500

15

Ridezebigone, le 14 fév 2008 à 21:29:10

Salut à tous!

Vous déterrez les vieux posts !!! je ne me souvenais plus de mon problème et je suis passé par une solution non proposée que voici (j'avais peut etre mal exposé mon problème à l'époque ou j'ai choisi une solution alternative ensuite...) :

<FORM method="POST" action="ajout_spot.php" name="formulaire">
<table>
<tr bgcolor="<? echo "$tableau1"; ?>">
<td>
<div align="right" style="color:<? echo "$txt1"; ?>">Nouveau spot: </div>
</td>
<td>
<div align="left"> <input type="text" name="new_spot" maxlength="25"></div>
</td>
</tr>
</table>
<div><input type="button" name="btenvoyer" value="Envoyer !" OnClick="verif_send();"></div>

</FORM>


Ce formulaire envoi à la page 'ajout_spot.php' le contenu de "new_spot".

dans la page 'ajout_spot.php' ; la variable $new_spot contient ce qui a été saisie dans le formulaire.


-------------------

Autre solution avec JS (pas de ma création, d'ailleurs je n'ai tjrs rien compris au bout de code en js). Cette page permet de passez des paramètres à elle même (je pense qu'il s'agit de 'self' passé en paramètre dans la fonction MM_jumpMenu). Une fois que l'utilisateur a cliquer sur un élément du formulaire, la page se réexécute avec la variable passé en paramètre dans l'URL.

bidon.php :

<html>
<head>
<SCRIPT language=JavaScript>
function MM_jumpMenu(targ,selObj,restore)
{ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore)
selObj.selectedIndex=0;
}
</SCRIPT>
</head>

<body>
<FORM name="formulaire1">
<div align="center">
<select name="variable_ici" onChange="MM_jumpMenu('self',this,0)">
<option value="" selected>Choisir la variable</option>
<option value="?var=1">1</option>
<option value="?var=2">2</option>
<option value="?var=3">3</option>
</select>
</div>
</FORM>


<?
if($var == 1)
{
//votre code
{
?>
</body>
</html>


En espérant que ça aide qql'un par la suite :-)

Répondre à Ridezebigone

16

kelerhaiti, le 6 nov 2008 à 22:23:39

Pour le faire, il y a deux moyen , dans le fichier de configuration de php tu mets a on register_global
ou du moins tu utilises les session ainsi ca marche , j'ai essaye les 2 methodes ca me donne la meme chose, sauf je te conseille d'utiliser les sessions.

Répondre à kelerhaiti

17

riadh, le 2 mar 2009 à 07:59:07

Je vous remercie mon ami
ça bien marcher :
index.php?Body=<?php print "$Body" ?>
parce qu'il fait afficher le variable par la suite il faut lui passer en paramètre
Merci encore une fois

Répondre à riadh

18

BUTTER_FLYY, le 16 avr 2009 à 12:26:21

Salut,
ca n'a pas marché pour moi;
<a href="modification.php?id_participant="<?php echo $id; ?> >
dans l'url, il m'affiche id_participant= sans afficher le contenu de la variable id.j'en ai besoin pour la page modification des donnees.

Répondre à BUTTER_FLYY

19

Tanatlock, le 22 avr 2009 à 09:51:57

Bonjour,

Je voudrais savoir si il est possible de passer plusieurs variables en paramètre dans l'url, En fait j'ai besoin de deux variables pour exécuter une requête. Comment puis-je faire?

Répondre à Tanatlock