Formulaire : Stocker une réponse dans une variable URL

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Formulaire : Stocker une réponse dans une variable URL

par Jerem' » 25 févr. 2005, 23:44

De rien, hésite pas à t'enregistrer si t'as d'autres questions :wink:

Par contre j'avais pas tout vu sur ta source, mais le header() ne fonctionnera pas si y'a du html avant ton php, il faut mettre ton code tout en haut sinon tu auras un message d'erreur :wink:

par Invité » 25 févr. 2005, 23:44

Youpiiiiiiiiiiiiiiiiiiiii :D

Ca marche nickel, merci à vous :P

par Jerem' » 25 févr. 2005, 23:41

Remplace :

Code : Tout sélectionner

if($_get['id']==TRUE)
Par :

Code : Tout sélectionner

if(isset($_GET['id']))
Pour tester l'existence de la variable :wink:

par Invité » 25 févr. 2005, 23:29

Merci !

Pour l'instant, j'en suis là et j'ai une erreur :
<html>
<body>

<?php
if($_get['id']==TRUE)
{
$id=$_get['id'];
$NOOB="http://www.divx-car.com/phpBB_Fr/viewto ... id."#".$id;
Header ("Location: $NOOB");
}
?>


<table>
<TD>

<form action="formulaire.php" method="get">
<input type="text" name="id">
<input type="submit">
</form>

</TD>
</table>

</body>
</html>
Voyez-vous quelque chose à corriger ?

par fab » 25 févr. 2005, 21:48

Bon ...
l'exemple que tu as donné a savoir : http://[domain]/index.php#bidule , ne permet pas de stocker des données mais seulement d'orienté précisement l'utilisateur à un endroit précis de la page ou tu auras mis une balise ( HTML ) <a name="bidule">.

Pour pouvoir stocker des données dans les urls en php il te faut utiliser la méthode suivante
http://[domain]/index.php?var=contenu
var : est le nom de la variable et contenu est ce qu'elle contient.
Pour récupérer la valeur de var il faut utiliser le table $_GET[] , exemple $_GET['var'];

Un exemple plus concret :
l'url d'acces a ton fichier est http://[domain]/index.php?var=accueil

dans ton fichier index.php tu récuperes la valeur de var de la maniere suivante :
<?php
$contenu = $_GET['var'];
// et si tu veux l'afficher : 
echo $contenu; // ou directement echo $_GET['var']; 
?>

par Invité » 25 févr. 2005, 21:30

J'ai rien compris 8)

par fab » 25 févr. 2005, 21:29

bon je revien pas sur ce que a dit Jerem car comme d'hab c'est nickel :) , juste une précision le #bidule dans les urls c'est pour que quand on ouvre une page on arrive directement sur un endroit précis de la page détéminé a l'aide d'une balise <a name="bidule">

par Jerem' » 25 févr. 2005, 20:36

Pour récupérer une variable on fait pas

Code : Tout sélectionner

page.php#valeur
On fait :

Code : Tout sélectionner

page.php?variable=valeur
Ensuite : pour passer une valeur dans la barre d'adresse depuis un formulaire, il faut une method "get"

Exemple:

Code : Tout sélectionner

<form action="test.php" method="get"> <input type="text" name="variable" value="valeur"> <input type="submit"> </form>
La validation du formulaire entrainera sur la page

Code : Tout sélectionner

test.php?variable=valeur
Et pour récupérer la valeur de "variable" dans test.php:

Code : Tout sélectionner

$mavariable = $_GET['variable'];

Formulaire : Stocker une réponse dans une variable URL

par Invité » 25 févr. 2005, 20:25

Bonjour, je sais le titre est bizarre mais ce que je veux faire n'est à priori pas si difficile :oops:

Voilà, en considérant que j'ai plusieurs URL :

http://www.php.com/forum/blablabla0001.php#0001
http://www.php.com/forum/blablabla0002.php#0002
http://www.php.com/forum/blablabla0003.php#0003
http://www.php.com/forum/blablabla0004.php#0004
http://www.php.com/forum/blablabla0005.php#0005

Vous voyez donc que ce que je veux afficher différe seulement selon "N" :

http://www.php.com/forum/blablablaN.php#N

Donc ce que j'aimerais faire, c'est proposer un formulaire avec un seul champ où l'utilisateur pourrait entrer un N quelquonque et ça l'enverrait vers la page correspondante...

Donc voilà le formulaire dans sa plus simple expression :
<table>
<TD>

<FORM action="" method="" target=_blank>
<INPUT>

<TR>
<TD>FORMULAIRE></TD>
</TR>

<TR>
<TD align=middle>Numéro :</FONT></TD>
</TR>

<TR>
<TD colSpan=2>
<CENTER><INPUT type="submit" value=Entrer></CENTER>
</TD>
</TR>

</FORM>

</TD>
</table>
Et maintenant j'ai besoin de vous pour savoir comment m'y prendre :roll:

Merci :wink: