Accueil > Forum > > > > champ d'un formulaire alimenté par une liste de choix
champ d'un formulaire alimenté par une liste de choix
mardi 15 décembre 2009 à 22:04:31 |
champ d'un formulaire alimenté par une liste de choix

jeremili
|
Bonjour,
Je voudrais créer un formulaire avec des champs pouvant être alimentés par une pop-up contenant des données issues d'une table.
ex:
En face de chaque champ il y aurait une loupe, si je clique sur la loupe une pop-up s'ouvre, celle-ci contient des données issues d'une table et si je clique sur une donnée celle ci alimente le champ du formulaire.
J'aurais voulu savoir quel langage utiliser et notamment savoir s'il est possible de le faire en javascript et PHP et si oui auriez vous quelque exemple.
Merci d'avance
Cdt
Jérémy
|
|
mercredi 16 décembre 2009 à 03:23:14 |
Re : champ d'un formulaire alimenté par une liste de choix

jdmcreator
|
Bonjour,
Je n'ai pas d'exemple pour toi, malheureusement, mais je peux te donner quelques pistes. Pour modifier un champ de formulaire, on utilise la propriété value
Pour modifier la page d'un popup, on utilise window.opener
JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
fr.jsinfo.wikia.com
|
|
mardi 29 décembre 2009 à 23:34:45 |
Re : champ d'un formulaire alimenté par une liste de choix

jeremili
|
Bonsoir,
J'ai réussi à faire a peu près ce que je souhaitais.
En face de mon champ text j'ai un lien qui ouvre un pop-up,dans ce pop-up j'ai une liste déroulante alimentée par une base de données et lorsque je clique sur une valeur de la liste déroulante, celle-ci est reportée dans le champ text de la fenêtre "mère".
Maintenant ce que je voudrais, au lieu d'avoir une liste déroulante dans mon pop-up je voudrais une liste (tableau), que chaque ligne soit cliquable et que lorsque je clique sur une ligne celle ci soit reporté dans le champ de la fenêtre mère.
Voici le code de mon pop-up (qui fonctionne) avec la liste déroulante:
Code HTML : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>Popup</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script language="javascript">
function Reporter(l)
{
var cencpt_cod=l.options[l.options.selectedIndex].value;
window.opener.document.forms["test"].elements["test_cod"].value=test_cod;
window.close();
}
</script>
</head>
<body>
<?php
include ("connect.php");
?>
<form name='report'>
<select onChange="Reporter(this)">
<?php
if($cod==""){
echo('<option value="'.'">'.'Choisir'.'</option>');
}
else
{
echo('<option value="'.'">'.'</option>');}
$SQL = "SELECT * FROM TEST";
$res = mysql_query($SQL);
while($val=mysql_fetch_array($res)) {
echo "<option>".$val["COD"]. ' - '.$val["LIB"]."</option>\n";
}
?>
</select><br><br>
</form>
<!-- <A href="javascript:window.close()">Fermer la pop-up</A> (lien pour fermer la pop-up mauellement) -->
<?php
include ("disconnect.php");
?>
</body>
</html>
Et voici mon code avec la liste (tableau) que je n'arrive pas a faire fonctionner:
Code HTML :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>Popup</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script language="javascript">
function Reporter(l)
{
var cencpt_cod=l.options[l.options.selectedIndex].value;
window.opener.document.forms["test"].elements["test_cod"].value=test_cod;
window.close();
}
</script>
</head>
<body>
<?php
include ("connect.php");
?>
<form name='report'>
<?php
$SQL = "SELECT COD,LIB FROM TEST";
$res = mysql_query($SQL);
while($row=mysql_fetch_row($res))
{
$Cod = $row[0];
$Lib = $row[1];
?>
<tr>
<td><a href="javascript:Reporter(this)"><?php echo $Cod ?></a></td>
<td><?php echo $Lib ?></td>
<br />
</tr>
<?php
}
?>
</form>
<?php
include ("disconnect.php");
?>
</body>
Lorsque je clique sur une ligne la fonction Reporter semble ne pas être appelée et la valeur n'est pas reportée dans la fenêtre mère.
Merci d'avance pour votre aide
Cdt
Jérémy
|
|
mercredi 30 décembre 2009 à 03:37:23 |
Re : champ d'un formulaire alimenté par une liste de choix

jdmcreator
|
Code Javascript : function Reporter(l)
{
var cencpt_cod=l.options[l.options.selectedIndex].value;
window.opener.document.forms["test"].elements["test_cod"].value=test_cod;
window.close();
}
Tu ne peux pas mettre 1 comme nom de variable. Cela ne respecte pas les règles. Remplace le plutôt par un nom comme "element" ou plus simplement "a" ;)
JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
fr.jsinfo.wikia.com
|
|
mercredi 30 décembre 2009 à 14:04:29 |
Re : champ d'un formulaire alimenté par une liste de choix

jeremili
|
Bonjour,
Je viens de remplacer "1" par "element" afin de respecter au mieux les règles, cependant cela ne modifie pas le comportement et ne résout pas mon problème.
Malgré le peu de connaissance que j'ai en prog, je soupçonne que le problème vienne de l'affectation de valeur à la variable test_cod et notamment le selectIndex
Code Javascript :
function Reporter(element)
{
var test_cod=element.options[element.options.selectedIndex].value;
window.opener.document.forms["test"].elements["test_cod"].value=test_cod;
window.close();
}
car dans le cas d'une liste (tableau) il n'y a pas de select dans le formulaire.
Quelqu'un aurait une idée?
Merci
Cdt
Jérémy
|
|
mercredi 30 décembre 2009 à 17:10:58 |
Re : champ d'un formulaire alimenté par une liste de choix

jdmcreator
|
En effet, il me semble qu'il suffit de mettre element.selectedIndex et non element.options.selectedIndex
JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
fr.jsinfo.wikia.com
|
|
jeudi 31 décembre 2009 à 11:12:15 |
Re : champ d'un formulaire alimenté par une liste de choix

jeremili
|
Cela ne change toujours rien.... 
|
|
jeudi 31 décembre 2009 à 16:00:48 |
Re : champ d'un formulaire alimenté par une liste de choix

jdmcreator
|
Mais que te retourne la console d'erreur ????
JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
fr.jsinfo.wikia.com
|
|
jeudi 31 décembre 2009 à 16:03:49 |
Re : champ d'un formulaire alimenté par une liste de choix

jdmcreator
|
En passant, dans ton code, je ne trouve pas le formulaire "test" ni l'élément "test_cod" ... Est-ce que je pourrais voir le code au complet ?
JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
fr.jsinfo.wikia.com
|
|
samedi 2 janvier 2010 à 15:27:55 |
Re : champ d'un formulaire alimenté par une liste de choix

jeremili
|
Bonjour JDMCreator,
Avant tout je te remercie du temps que tu consacre a mon pb.
Sinon voici le code complet en 3 fichiers:
Le premier fichier index.php (formulaire)
Code PHP : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>TEST</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Language" content="fr" />
<script type="text/javascript" src="open_popup_test.js"></script>
</head>
<body>
<?php
mysql_connect(localhost, root, root) or die('<h1>Connexion au serveur impossible !</h1>');
mysql_select_db(test2) or die('<h1>Connexion impossible à la base</h1>');
?>
<form name='test'>
TEST:
<input type="text" name="test_cod">
<a href="javascript:open_popup_test()">Ouverture popup</a><br><br>
<?php
mysql_close();
?>
</body>
</html>
Puis le fichier contenant la fonct° javascript nommée open_popup_test.js:
Code Javascript : function open_popup_test()
{
window.open("popup_test.php", "TEST", "toolbar=yes, status=yes, scrollbars=yes, resizable=no, width=300, height=300");
}
Puis la pop-up nommée popup_test.php:
Code PHP : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>Popup</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script language="javascript">
function Reporter(element)
{
var test_cod=element.[element.selectedIndex].value;
window.opener.document.forms["test"].elements["test_cod"].value=test_cod;
window.close();
}
</script>
</head>
<body>
<?php
mysql_connect(localhost, root, root) or die('<h1>Connexion au serveur impossible !</h1>');
mysql_select_db(test2) or die('<h1>Connexion impossible à la base</h1>');
?>
<form name='report'>
<?php
$SQL = "SELECT COD,LIB FROM TEST";
$res = mysql_query($SQL);
while($row=mysql_fetch_row($res))
{
$cod = $row[0];
$lib = $row[1];
?>
<table>
<tr>
<td><a href="javascript:Reporter(this)"><?php echo $cod ?></a></td>
<td><?php echo $lib ?></td>
<br />
</tr>
</table>
<?php
}
?>
</form>
<?php
mysql_close();
?>
</body>
</html>
Et si tu veux voici le script de schéma Mysql:
Code : SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
CREATE TABLE IF NOT EXISTS `test` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`COD` varchar(5) COLLATE utf8_unicode_ci NOT NULL,
`LIB` varchar(40) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`ID`),
UNIQUE KEY `ID` (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=5 ;
-- Contenu de la table `test`
INSERT INTO `test` (`ID`, `COD`, `LIB`) VALUES
(1, '1111', 'TEST1'),
(2, '2222', 'TEST2'),
(3, '3333', 'TEST3'),
(4, '4444', 'TEST4');
Avec ce code lorsque je clique sur une valeur de la pop-up il ne se passe rien, alors que si je met le code suivant dans le fichier popup_test.php c'est OK:
Code PHP : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>Popup</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script language="javascript">
function Reporter(element)
{
var test_cod=element.options[element.options.selectedIndex].value;
window.opener.document.forms["test"].elements["test_cod"].value=test_cod;
window.close();
}
</script>
</head>
<body>
<?php
mysql_connect(localhost, root, root) or die('<h1>Connexion au serveur impossible !</h1>');
mysql_select_db(test2) or die('<h1>Connexion impossible à la base</h1>');
?>
<form name='report'>
<select onChange="Reporter(this)">
<?php
if($cod==""){
echo('<option value="'.'">'.'Choisir'.'</option>');
}
else
{
echo('<option value="'.'">'.'</option>');}
$SQL = "SELECT COD,LIB FROM TEST";
$res = mysql_query($SQL);
while($val=mysql_fetch_array($res)) {
echo "<option>".$val["COD"]. ' - '.$val["LIB"]."</option>\n";
}
?>
</select><br><br>
</form>
<?php
mysql_close();
?>
</body>
</html>
Merci d'avance pour ton aide et bonne année.
Cdt
Jérémy
|
|
Cette discussion est classée dans : formulaire, liste, champ, choix, alimenté
Répondre à ce message
Sujets en rapport avec ce message
Javascript : Lier plusieurs listes déroulantes [ par bolbo ]
Bonjour, J'ai une question en javascript, concernant l'utilisation des listes déroulantes. J'ai un ensemble de champs dans ma base de données, et je
Passage d'une variable dans un formulaire [ par jeanmarieb ]
Bonjour, Je voudrais me servir du résultat du champ précédent dans le champ suivant Exemple : suivant le choix effectué dans le champ où je peux
Afficher les infos d'une liste deroulante dans un champs [ par MrAnonym ]
Bonjour, je m'excuse pour le choix du theme je ne savais pas trop ou poster. Donc voici mon problème, je voudrais afficher les selctions de plusieur
Script de vérification de formulaire avec des choix cachés [ par benetophe ]
Bonjour à tous,Je poste ce message car je sèche royalement sur un script de vérification de formulaire.Après plusieurs jours de recherche sur la toile
Petite aide en AJAX [ par definet ]
Bjr, Voila mon problème je voudrais faire en ajax: Je voudrais avoir une liste déroulante avec quelque option et une option fixe qui me propose de r
FORMULAIRE [ par parenthese101 ]
Bonjour à tous et à toutes, Sur l'une de mes pages web, j'ai des boutons qui ouvrent tous le même formulaire. Comment faire pour que au clic de chacu
Bouton et liste déroulante dans un formulaire [ par lebender33 ]
Bonjour à tous, Ca fait super longtemps que je n'avais pas codé et je me suis lancer dans un script grease monkey html/javascript pour rendre l'utili
Afficher une variable dans une zone de texte d'un formulaire se trouvant sur une popup [ par xacomputer ]
Bonjour, voila mon problème, je souhaiterais changer la valeur du champ d'un formulaire par une variable, sans utiliser de bouton, la difficulté est q
PHP/Javascipt et formulaire dynamique [ par tiquisrd ]
Bonjour, je suis entrain de monter une page PHP avec un formulaire qui contient, entre autre, une liste de départements (requête PHP/MySQL). Je souhai
Popup css? avec formulaire inside [ par DaD92 ]
Salut à tous, Je ne suis pas très fort en développement, je connais un peu les CSS et le php, mais mon petit cerveau c'est arrêté là pour l'instant.
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
UTILISER UN .JSUTILISER UN .JS par zaikoe
Cliquez pour lire la suite par zaikoe
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|