Valider un formulaire avec un lien en y passant une variable. [TITRE MODERE : TO

PttNanie Messages postés 8 Date d'inscription mardi 14 février 2006 Statut Membre Dernière intervention 11 mai 2007 - 9 mars 2006 à 17:26
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 10 mars 2006 à 10:12
Bonsoir à tous!

Voila, j'ai un problème très très urgent, et cela fait quelques jours que je me casse la tête sur ça!

J'ai un formulaire qui comprend deux boutons radio du même nom. Je voudrais donc valider ce formulaire grâce à un lien. Vous allez me dire que ce code existe en plusieurs exemplaire sur ce site. Et cela est vrai.
Mais c'est que j'ai un autre problème avec ce lien. Je souhaiterais qu'il me retourne une variable.

Voici le code dont je dispose, et je ne vois pas ou est le probmème...
Aidez-moi s'il vous plait.
Merci!!

18 réponses

PttNanie Messages postés 8 Date d'inscription mardi 14 février 2006 Statut Membre Dernière intervention 11 mai 2007
9 mars 2006 à 17:27
Voici le Code :

<form name="r" action="reg_dep.php" method="get">
choisir la région
choisir un département de la région





</td>
</tr>
<tr>
<td width="28%" height="49" bgcolor="#E4F3FF">&nbsp;</td>
<td width="72%" bgcolor="#E4F3FF">
<?
$requete = "select * from REGION;";
$resultat = mysql_query($requete, $connexion);
$ligne = mysql_fetch_assoc($resultat);
if($ligne)
{
while($ligne)
{
?>
[reg_dep.php?red=<?=$ligne['libregion']?>&javascript:document.r.submit() <? echo $ligne['libregion']; ?>]

<?
$ligne = mysql_fetch_assoc($resultat);
}
}
?>
</form>
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
9 mars 2006 à 17:42
Hello,

"Mais c'est que j'ai un autre problème avec ce lien. Je souhaiterais qu'il me retourne une variable."
C'est à dire ?

Et heu, comment dire...tu espères quoi avec cette ligne :
>&javascript:document.r.submit()">
??

Explique ce que tu veux faire plus clairement parce pour moi, ce n'est pas clair du tout. Et encore moins avec ce...code... ;-)
0
PttNanie Messages postés 8 Date d'inscription mardi 14 février 2006 Statut Membre Dernière intervention 11 mai 2007
9 mars 2006 à 19:46
Ben en faite avec cette ligne je voudrais rechargé la page en cours, c'est à dire reg_dep.php en lui passant la variable récupéré grâce à la requete dont le résultat est dans $ligne, mais aussi validé le formulaire...
Je sais pas si c'est très claire pour toi ce que je viens de dire...
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
9 mars 2006 à 20:06
Formulaire

<FORM Method="POST" Action="Blabla.php">
Blabla1 :,
,

----

Blabla2 :,

----, Blabla3 :</td>
,

----

Blabla4 :,
,

----

Blabla5 :,
,

----

</FORM>
0

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

Posez votre question
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
9 mars 2006 à 20:09
Blabla.php

<html>
<head>
<script>
function retour()
{
history.back();
}
</script>
</head>

<?
//Récupération des variables
Extract($HTTP_POST_VARS);
//Connexion au serveur
if
(!$conn = mysql_connect("Localhost","root",""))
echo ("Problème de connexion au serveur");
else
{
//Connexion à la base de données
$db=mysql_select_db("gestion_laboratoire");
if(!$db)
echo("Prob connexion à la base");
else
{
//Emission de la requête
if($sta=='Administrateur')
$sta=0;
else
$sta=1;
$req="Insert Into BLABLA(table) Values ('$blabla1','$blabla2','$blabla3','$blabla4','$blabla5')";
$res= mysql_query($req,$conn);
if($res==1)
echo "insertion réussi";
else
echo "echec de l insertion";
echo "

";
echo"Retour";
//Déconnexion de la base
mysql_close($conn);
}
}
?>

</html>
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
9 mars 2006 à 20:10
if($sta=='Administrateur')
$sta=0;
else
$sta=1;

A SUPPRIMER (cours à moi)
0
PttNanie Messages postés 8 Date d'inscription mardi 14 février 2006 Statut Membre Dernière intervention 11 mai 2007
9 mars 2006 à 20:42
Ca je sais faire...
Moi ce que je veux, c'est valider mon formulaire avec un lien, et avec ce lien recharger la page en cours tout en lui envoyant une variable!
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
9 mars 2006 à 21:57
c'est pas possible, désolé car tu as besoin d'une page pour saisir (html) et une autre pour exécuter la requete
notre prof (ALSI-->BTS IG) nous a dit aujourd'hui que tu peux mettre un fichier .html avec du php, il en fera rien

astuces dans ton formulaire sinon

<form>
--->exécuter le formulaire
---->éfface dans les cases
page précèdente
</form>
0
PttNanie Messages postés 8 Date d'inscription mardi 14 février 2006 Statut Membre Dernière intervention 11 mai 2007
9 mars 2006 à 22:43
Je crois que tu n'a pas très bien compris mon problème.
Dans mon formulaire je n'ai que deux bouttons radio, et je doit valider mon formulaire avec un lien, ce qui est possible avec la synthaxe : [javascript:document.r.submit() valider] ou "r" est le nom de mon formulaire.
Mais moi ce qu'il me faut, c'est qu'en plus de cette validation du formulaire, il me renvoi une valeur récupérer par une requête.
J'ai essayé avec un input de type hidden, mais le problème qui c'est posser, c'est que vu que j'ai une boucle while, le input garde la dernière valeur de la requête alors que moi je veux qu'il me renvoi la valeur du lien cliquer.
Par exemple j'ai :
- A
- B
- C

Quand je clique sur A, je veux que mon lien valide mon formulaire, et qu'il me renvoi la valeur A...

Donc voila, si quelqu'un sait faire cela, qu'il m'aide!

Merci!!
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
9 mars 2006 à 22:54
met ton code on verra un peu plus
tu utilises du javascript dans quoi, du php ou html????
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
9 mars 2006 à 22:58
Hello,

je pige rien de rien à ton truc.
Mais de toutes façons, c'est pas compliqué...
T'as un formulaire A.
Tu mets tout les champs que tu veux récupérer, ok.
Tu mets en plus 1 champ hidden, avec pour valeur 0.
Tu fais ton while.
Tu fous tes liens dans le while.
Et dans ton lien :
[# lien]
0
morpheus22170 Messages postés 99 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 8 septembre 2009
9 mars 2006 à 23:00
le code...
faire au plus simple sinon...
0
stiml Messages postés 132 Date d'inscription mardi 21 juin 2005 Statut Membre Dernière intervention 18 juin 2009
10 mars 2006 à 09:30
Salut,
Moi je comprend pas trop bien en gros tu veut envoyer tron formulaire avec en url la valeur séléctionné...
si c'est ca je vois pas trop ou est la difficulté... tien voila un exemple ou moi aussi sur une page j'ai deux bouton radio et je renvoisur une autre page apr contre la valeur sélectionné :

<!-- Mise en place du formulaire. Regarde l'action j'ajoute les paramètes de l'url -->

<form action="reponse.php?VARRESP=<?php echo $_GET['VARRESP']; ?>&VARPOSTE=<?php echo $_GET['VARPOSTE']; ?>" method="get" name="frmRepondre" id="frmRepondre">
<!-- Premier bouton radio -->

<label>

OUI
</label>


<!-- Deuxième bouton radio -->



<label>
NON
</label>



<!-- Bouton pour valider de type submit et deux de type hidden car je renvoi deux paramètres. Les paramètre son déjà récupéré de l'url -->

<label>

">
">
</label>


</form>



--------------------
StimL.
0
PttNanie Messages postés 8 Date d'inscription mardi 14 février 2006 Statut Membre Dernière intervention 11 mai 2007
10 mars 2006 à 09:30
Bon, je vais essayé d'etre clair!!!
J'ai deux boutons radio, donc pour récupérer la valeur du bouton séléctionné il faut que je valide mon formulaire (qui s'appel 'r').
Mais là ou se pose le problème, c'est qu'il faut que je le fasse avec un lien, ce qui est possible avec : [javascript:document.r.submit() Lien]. Cela marche parfaitement!
Mais l'autre problème qui se pose après celui ci, c'est qu'il faut que je renvoie le nom de la région sur laquel l'utilisateur à cliqué. J'ai essayé de mettre dans un input de type hidden, mais il garde la dernière valeur entrée par le while, et non la valeur du lien sur lequel il clique...

Voici mon code :

<form name="r" action="reg_dep.php" method="get">
choisir la région
choisir un département de la région

<?
$requete = "select * from REGION;";
$resultat = mysql_query($requete, $connexion);
$ligne = mysql_fetch_assoc($resultat);
if($ligne)
{
while($ligne)
{
echo '';
?>
<h2>
[javascript:document.r.submit() <? echo $ligne['libregion']; ?>]

<?
$ligne = mysql_fetch_assoc($resultat);
}
}
?>
</form>
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
10 mars 2006 à 09:39
Tu le fais exprès ? Je t'ai donné UNE des solutions possible. Il y en a d'autres.
Et ton problème est d'une logique implacable si tu réflêchis 2 secondes.
TU fais une boucle, mettons qu'elle t'affiche ça comme champ :

Donc tu obtiens :

par exemple.
Une page html est lue EN LIGNE. Donc si tu valides ton formulaire, forcément que ton champ 'test' prend d'abord la valeur 1, puis la ligne d'après 2, etc, jusqu'à 4.
Forcément, à la fin, t'as 4.

Je t'ai donné un moyen de donner la bonne valeur à ton champ, en utilisant javascript. IL y en a d'autres, en passant par un tableau pour ton champ hidden. Il y a moultes possibilités. Mais si tu ne testes pas ce qu'on te donne, ou/et ne réflêchis pas un minimum, tu ne vas jamais y arriver.
0
PttNanie Messages postés 8 Date d'inscription mardi 14 février 2006 Statut Membre Dernière intervention 11 mai 2007
10 mars 2006 à 09:50
Ben j'ai tester ce que tu m'a donné, mais ça m'a afficher reg_dep.php# dans l'url, sans valider le formulaire. Enfin je pense parce qu'il n'y as pas de changement sur ma page...


Bon, maintenant j'ai peut etre fait une erreur en modifiant ton code, mais faut dire que cela fait quand même un moment que je suis sur ce problème, et je commence légèrement à en avoir marre!!!


Donc voila comment j'ai modifier ton code :

[# ; r.submit();"><? echo $ligne['libregion']; ?>]
0
stiml Messages postés 132 Date d'inscription mardi 21 juin 2005 Statut Membre Dernière intervention 18 juin 2009
10 mars 2006 à 09:59
Moi je vois pas ou ils sont tes liens ou l'utilisateur peut cliqué...
enfaite là tu créer des liens de type hidden qui en se voyent pas et je vois pas sur quoi l'utilisateur peut cliqué... donc je vois pas comment tu peut récupéré la valeur...
merci de précisé ... si tu veux que je puisse t'aider



--------------------
StimL.
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
10 mars 2006 à 10:12
Bon voilà un exemple concret et plus simple :

<?php
if (isset ($_POST['keep']) && !empty ($_POST['keep'])) {
echo 'Choix : ', $_POST['keep'];
}
$aTab = array ('test', 'bla', 'coucou', 'argh');
?>
<form id="myForm" method="post">

<?php
foreach ($aTab as $val) {
echo '[javascript: void(0); ',$val,']
';
}
?>
</form>
<script type="text/javascript">
function go (val) {
f = document.getElementById('myForm');
f.keep.value = val;
f.submit ();
}
</script>
0
Rejoignez-nous