liste dynamique jumelée (dreamweaver Mx 2004)

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 : liste dynamique jumelée (dreamweaver Mx 2004)

par fred9999 » 08 sept. 2006, 09:56

Oups bavure j'allais oublier

[résolu]

:wink:

par fred9999 » 08 sept. 2006, 09:55

AAAALLLLLLLEEEEEEEELLLLLLLUUUUUUUUIIIIIIIAAAAAAA

ok ça fonctionne merci a toi prophete du javascript.

je m'en vais continuer mes traitements de bases de données en php !!! :lol:

a bientot et encore merci.

par Truc » 08 sept. 2006, 09:52

Faudrait même ajouter un attribut => name="f"

Pour débugger du javascript la console JS de Firefox n'est pas mal :wink:

par Truc » 08 sept. 2006, 09:43

remplace le nom du formulaire par le tient :

document.f

par fred9999 » 08 sept. 2006, 09:17

En fait je ne comprend rien :lol:

donc si qqun avai la gentilesse de m'aider je lui serait reconnaissant :wink:
<?
if(isset($_POST['change_style']))
// On vérifie que le formulaire a été soumis
{
		// On fait un cookie d'une année de durée pour garder en mémoire le style choisi et le récupérer à la prochaine visite

		setcookie('style', $_POST['style'], time()+(365*24*3600)) ;
		// Si le fichier *.css existe on définit une variable $css correspondant au style choisi
		$css = $_POST['style'] ;
		$css="$css.css";
}
elseif(isset($_COOKIE['style']))
// Si le formulaire n'a pas été soumis, on vérifie si le cookie style existe et si tel est le cas on définit une variable $css correspondant à ce style
{
	$css = $_COOKIE['style'];
	$css="$css.css";
}	
else
// Si le cookie n'existe pas et que le formulaire n'a pas été soumis, on définit une variable $css correspondant au style par défaut, ici un_style.css par exemple
{
	$css = "ml.css" ;
}?>
<html>
<head>
<title>Site de la mission local de RENNES</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<?php
echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"../../".$css."\">\n" ;
?>
<script language="JavaScript" type="text/JavaScript">
<!--
function vider() 
{ 
    var lg = document.f.hfin.options.length-1; 
    for (var i = lg; i>=0; i--)  
    {                 
          document.f.hfin.options[i] = null; //suppression de l'option 
    } 
} 


function construire(valeur) 
{     
    // création des tableaux de "value" et libellé 
    var tab_value = Array(10,11,12,15,16,17); 
    var tab_libelle = Array("10h","11h","12h / 12h30","15h","16h","17h / 17h30"); 
         
    var nb_elem=0; 
     
    vider(); // on vide la liste 
     
    //création des nouvelles options 
    for (var i =0; i< tab_value.length; i++)  
    {   
          if(tab_value[i] > valeur) //si l'élément à créer est supperieur à celui de la liste sélectionné 
            { 
                var new_option = new Option(tab_libelle[i],tab_value[i]); // création de l'option 
                document.f.hfin.options[nb_elem]=new_option; //ajout de l'option 
                nb_elem++;  
            } 
                 
    } 
    document.f.hfin.options[0].selected=true; // sélectionner le 1er élément de la liste 
     
}
//-->
</script>
</head>
<body>
<table width="100%"  border="1" cellpadding="0" cellspacing="0" bordercolor="#000000">
  <tr>
    <td bordercolor="#000000" bgcolor="#009900"><div align="center"><strong>Ajout de r&eacute;union dans le module AGENDA </strong></div></td>
  </tr>
</table>
<br>
<table width="100%" border="1" bordercolor="#000000" cellpadding="0" cellspacing="0">
<tr>
<td>
<form action="agenr.php" method="post">
<table width="100%"  border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF">
  <tr>
    <td width="17%">&nbsp;</td>
    <td width="39%">Heure de d&eacute;but </td>
    <td width="44%">Heure de fin </td>
  </tr>
  <tr>
    <td>Horaires : </td>
    <td>
	<select name="hdep" id="hdep" onchange="construire(this.value);">       
    <option value="8" >8h30 / 9h</option> 
    <option value="10">10h</option> 
    <option value="11">11h</option> 
    <option value="13">13h30 / 14h</option> 
    <option value="15">15h</option> 
    <option value="16">16h</option> 
</select>
</td>
    <td>
	<select name="hfin" id="hfin"> 
    <option value="10">10h</option> 
    <option value="11">11h</option> 
    <option value="12">12h / 12h30</option> 
    <option value="15">15h</option> 
    <option value="16">16h</option> 
    <option value="17">17h / 17h30</option> 
</select>
</td>
  </tr>
  <tr>
    <td>Date</td>
    <td><input name="date" type="text" id="date" value="00/00/0000" size="11" maxlength="10"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Lieu :</td>
    <td><input name="lieu" type="text" id="lieu" size="50"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Th&egrave;me : </td>
    <td><input name="theme" type="text" id="theme" size="50"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Animation : </td>
    <td><input name="anim" type="text" id="anim" size="50"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><p>Invit&eacute; : </p>    </td>
    <td><input name="guest" type="text" id="guest" size="50"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Participants : </td>
    <td colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">Nombre : &nbsp;
      <input name="nbpart" type="text" id="nbpart" size="5" maxlength="10"> 
      Personnes. </td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">Condition : 
      <input name="inscri" type="text" id="inscri" size="50"></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">Possibilt&eacute; d'inscription : 
      <input type="radio" name="poss" value="1">
      Oui 
      <input name="poss" type="radio" value="0" checked>
      Non</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="3"><div align="center">
      <input type="submit" name="Submit" value="Envoyer"></form>
    </div></td>
    </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">&nbsp;</td>
  </tr>
</table>
</td></tr></table>
</body>
</html>
C'est bien comme ça qu'on le passe le code ???

sinon je vois pas

par fred9999 » 08 sept. 2006, 08:52

EN fait ça ne fonctionne pas je vais voir si je peut triuver l'erreur mai
comme j'y connais RIEN en js ..... :shock:

@+

par fred9999 » 08 sept. 2006, 08:47

merci

Je pense que je vais devoir acheter un autre livre après dreamweaver,
flash 8 .... :?

Il va me fallloir un livre sur le javascript et l'actionscript.

tu fais pas d'édition ou de cours du soir :lol:

merci encore en tout cas sur ce monseigneur .... a plus tard.

par Truc » 07 sept. 2006, 17:41

Oh ben personne n'est parfait :langue:

changement de méthode... on ne supprime plus au fur et à mesure de la liste mais on la créée au fur et à mesure.

Fonctions JS :
//fonction pour vider la liste
function vider()
{
	var lg = document.f.hfin.options.length-1;
	for (var i = lg; i>=0; i--) 
	{  	  		
  		document.f.hfin.options[i] = null; //suppression de l'option
	}
}


function construire(valeur)
{	
	// création des tableaux de "value" et libellé
	var tab_value = Array(10,11,12,15,16,17);
	var tab_libelle = Array("10h","11h","12h / 12h30","15h","16h","17h / 17h30");
		
	var nb_elem=0;
	
	vider(); // on vide la liste
	
	//création des nouvelles options
	for (var i =0; i< tab_value.length; i++) 
	{  
  		if(tab_value[i] > valeur) //si l'élément à créer est supperieur à celui de la liste sélectionné
    		{
    			var new_option = new Option(tab_libelle[i],tab_value[i]); // création de l'option
    			document.f.hfin.options[nb_elem]=new_option; //ajout de l'option
    			nb_elem++; 
    		}
    			
	}
	document.f.hfin.options[0].selected=true; // sélectionner le 1er élément de la liste
	
}
HTML :
<select name="hdep" id="hdep" onchange="construire(this.value);">      
	<option value="8" >8h30 / 9h</option>
	<option value="10">10h</option>
	<option value="11">11h</option>
	<option value="13">13h30 / 14h</option>
	<option value="15">15h</option>
	<option value="16">16h</option>
</select>
<select name="hfin" id="hfin">
	<option value="10">10h</option>
	<option value="11">11h</option>
	<option value="12">12h / 12h30</option>
	<option value="15">15h</option>
	<option value="16">16h</option>
	<option value="17">17h / 17h30</option>
</select>
ça devrait faire l'affaire........ mais ce n'est pas une habitude à prendre... d'attendre un code tout cuit :wink:

par fred9999 » 07 sept. 2006, 16:53

I'll be back tomorrow :lol:

par fred9999 » 07 sept. 2006, 16:13

oki thank amigo !!!

quand a moi je suis grace a mes deux écrans 8)

j'ai déplacé la fonction javascript dans ma page donc hé bien une petite scéance de code :
<?
if(isset($_POST['change_style']))
// On vérifie que le formulaire a été soumis
{
		// On fait un cookie d'une année de durée pour garder en mémoire le style choisi et le récupérer à la prochaine visite

		setcookie('style', $_POST['style'], time()+(365*24*3600)) ;
		// Si le fichier *.css existe on définit une variable $css correspondant au style choisi
		$css = $_POST['style'] ;
		$css="$css.css";

}
elseif(isset($_COOKIE['style']))
// Si le formulaire n'a pas été soumis, on vérifie si le cookie style existe et si tel est le cas on définit une variable $css correspondant à ce style
{
	$css = $_COOKIE['style'];
	$css="$css.css";
}	
else
// Si le cookie n'existe pas et que le formulaire n'a pas été soumis, on définit une variable $css correspondant au style par défaut, ici un_style.css par exemple
{
	$css = "ml.css" ;
}?>
<html>
<head>
<title>Site de la mission local de RENNES</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<?php
echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"../../".$css."\">\n" ;
?>
<script language="JavaScript" type="text/JavaScript">
<!--
for (
var i = document.recherche_nom.hfin.options.length; i >= 0 ; i--) 
{ 
  if(document.recherche_nom.hdep.options[i].selected) // si l'option est sélectionnée 
    document.recherche_nom.hfin.options[i] = null; // on la supprime 
}
//-->
</script>
</head>
<body>
<table width="100%"  border="1" cellpadding="0" cellspacing="0" bordercolor="#000000">
  <tr>
    <td bordercolor="#000000" bgcolor="#009900"><div align="center"><strong>Ajout de r&eacute;union dans le module AGENDA </strong></div></td>
  </tr>
</table>
<br>
<table width="100%" border="1" bordercolor="#000000" cellpadding="0" cellspacing="0">
<tr>
<td>
<form action="agenr.php" method="post">
<table width="100%"  border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF">
  <tr>
    <td width="17%">&nbsp;</td>
    <td width="39%">Heure de d&eacute;but </td>
    <td width="44%">Heure de fin </td>
  </tr>
  <tr>
    <td>Horaires : </td>
    <td><select name="hdep" id="hdep">
      <option>8h30 / 9h</option>
      <option>10h</option>
      <option>11h</option>
      <option>13h30 / 14h</option>
      <option>15h</option>
      <option>16h</option>
    </select></td>
    <td><select name="hfin" id="hfin">
      <option>10h</option>
      <option>11h</option>
      <option>12h / 12h30</option>
      <option>15h</option>
      <option>16h</option>
      <option>17h / 17h30</option>
            </select></td>
  </tr>
  <tr>
    <td>Date</td>
    <td><input name="date" type="text" id="date" value="00/00/0000" size="11" maxlength="10"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Lieu :</td>
    <td><input name="lieu" type="text" id="lieu" size="50"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Th&egrave;me : </td>
    <td><input name="theme" type="text" id="theme" size="50"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Animation : </td>
    <td><input name="anim" type="text" id="anim" size="50"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><p>Invit&eacute; : </p>    </td>
    <td><input name="guest" type="text" id="guest" size="50"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Participants : </td>
    <td colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">Nombre : &nbsp;
      <input name="nbpart" type="text" id="nbpart"> 
      Personnes. </td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">Condition : 
      <input name="inscri" type="text" id="inscri" size="50"></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">Possibilt&eacute; d'inscription : 
      <input type="radio" name="poss" value="radiobutton">
      Oui 
      <input type="radio" name="poss" value="radiobutton">
      Non</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="3"><div align="center">
      <input type="submit" name="Submit" value="Envoyer"></form>
    </div></td>
    </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">&nbsp;</td>
  </tr>
</table>
</td></tr></table>
</body>
</html>
voila ou j'en suis :lol:

par Truc » 07 sept. 2006, 16:10

Et bien je commence par déplacer le post dans le forum approprié... je réfléchis un peu et reviens :lol:

par fred9999 » 07 sept. 2006, 16:01

allons y pour le js sinon mes utilisateurs vont gueuler :P

ils comprennent pas tjs le travail que demande le boulot d'informaticien :lol:

par Truc » 07 sept. 2006, 15:59

On se lance dans la version PHP ou Javascript ?

Pour le JS une boucle parcourt la liste (select) puis supprime les éléments (option) qui ne doivent pas apparaitre.

par fred9999 » 07 sept. 2006, 15:44

en fait je connais pas le javascript
je l'utilise parfois a l'aide de script récupéré sur le net :oops:
A part pour le history go -1 :lol:
mai la je vois pas a quoi tt ça correspond :cry:

peut tu m'aider a y voir + clair :idea:

par Truc » 07 sept. 2006, 15:33

Heureusement que tu t'es rattrapé en postant une 2ème fois :lol:
On ne peut pas TOUT demander à ce pauvre DW par simple clics :wink:

Pour ce que tu veux faire c'est faisable en PHP ou Javascript à toi de voir si tu veux recharger la page après le choix de l'utilisateur dans la 1ère liste ou non.

Plus simple en PHP, suffit de comparer la valeur POST récupérée après chargement avec les "value" des option pour savoir s'il faut afficher ou non.

En Javascript regarde ce post