Pbm liste déroulante avec onchange js

lyonnaisedecoeur Messages postés 65 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 15 mai 2008 - 6 mai 2008 à 16:24
lyonnaisedecoeur Messages postés 65 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 15 mai 2008 - 7 mai 2008 à 09:51
Bonjour voila j'ai un petit souci à résoudre.
J'ai une page style_fin.php dans laquell j'ai déclaré cela:

<script type="text/javascript" src="javascript/prototype.js"></script>
<script type="text/javascript" src="javascript/scriptaculous.js?load=effects.js"></script>
<script type="text/javascript" src="javascript/personnel.js"></script>
<script language="JavaScript" type="text/JavaScript">

dans cette page j'ai inclus plusieurs pages géré par un menu flash ainsi qu'avec de l'ajax de sorte de ne chager qu'une partie de page dans laquelle j'inclu toutes mes pages... erf on me suit?
ces pages sont dans un dissoer contenu, et ma page avec ma liste deroulante se situe dans contenu/son/home_cinema.php.
Commd c'est une page inclus dans style_fin.php, normalement elle peut recuperer les fonction js déclaré dans le head de style_fin.php.
J'espère qu'on me suit tjs.... donc je travail sur home_cinema.phpet c'est la que sa se complique, j'ai une liste glissante et selon le produit selectionné apparait dans une div plus bas le produit avec son descriptif déclaré dans une table. Voici mon code sur home_cinema.php:

S&eacute;lectionnez le produit:

<form name="f">
<select name="liste2" onChange="personnel(\''.$nomgamme.'\',\''.$nomprod.'\',\''.$type.'\',\''.$descriptif.'\',\''.$prix.'',\''.$lien.'\')">
<?php
   
    $resultat=mysql_query("SELECT * from BOSE ORDER BY Identifiant_produit");
     while ($donnees = mysql_fetch_array($resultat) )
            {
            $id=addslashes($donnees['Identifant_produit']);
            $nomgamme=addslashes($donnees['Nom_gamme']);
            $nomprod=addslashes($donnees['Nom_produit']);
            $type=addslashes($donnees['Type_produit']);
            $descriptif=addslashes($donnees['Descriptif']);
            $prix=addslashes($donnees['Prix']);
            $lien=addslashes($donnees['lien_image']);
?>   
<option value="<?php $donnees['Identifant_produit']; ?>"><?php echo $donnees['Nom_produit']; ?></option>
<?php
}
?>
</select>
</form>

<?php
    $resultat=mysql_query("SELECT * from BOSE WHERE Identifiant_produit='1'");
     while ($donnees = mysql_fetch_array($resultat) )
            {
            $id='1';
            $nomgamme=addslashes($donnees['Nom_gamme']);
            $nomprod=addslashes($donnees['Nom_produit']);
            $type=addslashes($donnees['Type_produit']);
            $descriptif=addslashes($donnees['Descriptif']);
            $prix=addslashes($donnees['Prix']);
            $lien=addslashes($donnees['lien_image']);
            echo $id;
            echo $nomprod;
                     echo'
                    <script type="text/javascript">
                    personnel(\''.$nomgamme.'\',\''.$nomprod.'\',\''.$type.'\',\''.$descriptif.'\',\''.$prix.'\',\''.$lien.'\');
                    //-->
                    <!--</script>
                    ';
            echo('me voila apres persnnel');
                    }
                    mysql_close();
?>

<!--fin menu2-->

<!-- fin menu1-->

Voici mon code dans personnel.js:

function GetId(id)
                {
                return document.getElementById(id);
                }
       
        function disparaitre(div){
        new Effect.Fade(div, {duration:1, fps:25, from:1.0, to:0.0});
        }
       
        function apparaitre(div){
        new Effect.Appear(div, {duration:1, fps:25, from:0.0, to:1.0});
        }
       
        function retour(nombre){
        disparaitre("diapo");
        setTimeout("apparaitre("page");",1250);
        }
       
        function miseajour(img,nom,prenom,ad,cp,tel,fax,mail,stat,etabl,lien){
        Element.update("menu2","

<li>"+nom+"</li><li>"+prenom+"</li><li>"+ad+"</li><li>"+cp+"</li><li>"+tel+"</li><li>"+fax+"</li><li>"+mail+"</li><li>"+stat+"</li><li>"+etabl+"</li><li>Voir les publications</li>
");
        }
       
        function personnel(img,nom,prenom,ad,cp,tel,fax,mail,stat,etabl,lien){
        disparaitre("menu2");
        setTimeout("miseajour(""+img+"",""+nom+"",""+prenom+"",""+ad+"",""+cp+"",""+tel+"",""+fax+"",""+mail+"",""+stat+"",""+etabl+"",""+lien+"")",1075);   
        setTimeout("apparaitre("menu2");",1100);
        }

Le problème est que sa bug et que le produit par defaut ne s'affiche même pas.... je doute que l'insertion du jscript doit être foireuse.... si quelqu'un peut m'aider sa serait parfait.... Merci bcp!!!!!!!!!

11 réponses

lyonnaisedecoeur Messages postés 65 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 15 mai 2008
6 mai 2008 à 16:29
Erf il y a erreur sur personnel.js: voici le code que j'ai:
function GetId(id)
                {
                return document.getElementById(id);
                }
       
        function disparaitre(div){
        new Effect.Fade(div, {duration:1, fps:25, from:1.0, to:0.0});
        }
       
        function apparaitre(div){
        new Effect.Appear(div, {duration:1, fps:25, from:0.0, to:1.0});
        }
       
        function retour(nombre){
        disparaitre("diapo");
        setTimeout("apparaitre("page");",1250);
        }
       
        function miseajour(nomgamme,nomprod,type,descriptif,prix,lien){
        Element.update("menu2","

<li>"+nomprod+"</li><li>"+nomgamme+"</li><li>"+type+"</li><li>"+prix+"</li><li>"+descriptif+"</li>
");
        }
       
        function personnel(nomgamme,nomprod,type,descriptif,prix,lien){
        disparaitre("menu2");
        setTimeout("miseajour(""+nomgamme+"",""+nomprod+"",""+type+"",""+descriptif+"",""+prix+"",""+lien+"")",1075);   
        setTimeout("apparaitre("menu2");",1100);
        }
       
0
lyonnaisedecoeur Messages postés 65 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 15 mai 2008
6 mai 2008 à 16:47
Erf personne pourrait tenter de me dire ce qui cloche??
je vois pas du tout et si c'est une cote ou une guillemet, je risque vraiment pas de la voir.... help!
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
6 mai 2008 à 17:15
Salut,

Es ce que l'on pourait avoir au moins l'erreur dont tu nous parle ?

a++

Si t'a besoin d'aide, MP !!!
Un forum...
0
lyonnaisedecoeur Messages postés 65 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 15 mai 2008
6 mai 2008 à 17:23
Erf ah ok, jsuis pas trés clair dur dur , mais merci de t'interesser à mon pbm deja.
Ba le problème c'est que rien ne s'affiche, car par defaut le produit dont l'id=1 devrait 'safficher avec un apparition et lorsque je séléctionne un autre produit dans ma liste déroulante le dernier produit doit disparaitre pour afficher celui correspondant à ma nouvelle demande...et rien ne marche...!
0

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

Posez votre question
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
6 mai 2008 à 17:27
Ok,

Je crois que je vais laisser le sujet a bultez car je n'ai aucune idée de ton problème, mais je suis sur qu'en creusant on trouverai la solution mais la je n'ai pas le temps, je dois réviser pour le brevet blanc, c'est dans une semaine, encore désolé ...

a++

Si t'a besoin d'aide, MP !!!
Un forum...
0
lyonnaisedecoeur Messages postés 65 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 15 mai 2008
6 mai 2008 à 17:31
est ce que ma page home_cinema.php a le lien vers les fichiers .js?
elle est dans le repertoire son lui mm étant dans le repertoire contenu...

et sur le bouton de mon menu flash situé sur la page principal style_fin.php linsertion de ma page se fait grâce a du ajax et a la fonction:
geturl(?contenu/son/home_cinema);

bref on s'écarte mais je voulais savoir si l'accés des fichiers js peut se faire à un degré assez éloigné de style_fin.php...
Mais apres je me dis que c'est un include donc normalement c'est pas sa le pbm... donc sa doit plus etre dû au onchange ou a une mauvaise structure ici:

  echo'
                    <script type="text/javascript">
                    personnel(\''.$nomgamme.'\',\''.$nomprod.'\',\''.$type.'\',\''.$descriptif.'\',\''.$prix.'\',\''.$lien.'\');
                    //-->
                    <!--</script>

voila...help!
0
lyonnaisedecoeur Messages postés 65 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 15 mai 2008
6 mai 2008 à 17:33
Bultez c'est qui? il peut m'aider?
erf moi je doit valider mon DUT info avec ce site en stage donc bon c'est assez important!
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
6 mai 2008 à 18:48
Ne t'inquiète pas, bultez a toujours les réponses a toute les questions, il ne va pas tarder, je pense ...

a++

Si t'a besoin d'aide, MP !!!
Un forum...
0
lyonnaisedecoeur Messages postés 65 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 15 mai 2008
7 mai 2008 à 09:00
Bultez est toujours pas par là???
0
lyonnaisedecoeur Messages postés 65 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 15 mai 2008
7 mai 2008 à 09:40
J'ai reussi à cibler un peu la ou les erreurs, lorsque je vais directement à la page home_cinema, et que j'affiche osn code source, elle récupère bien les données lors de ma deuxieme requête sql pour identifiant =1 elle affiahce bien personnel('vvfvf,vvsv,vsfvf....')avec les données contenu cependant la premiere requête le onchange ne récupère pas les valeures des variables, est ce que c'est dû au fait que j'effectue ma requete sql juste apres? ou un pbm de cotes ou guillemets?
0
lyonnaisedecoeur Messages postés 65 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 15 mai 2008
7 mai 2008 à 09:51
Non c'est bon j'ai reglé cela, voila à présent mon code sur hom_cinema.php:

S&eacute;lectionnez le produit:

<form name="f">
<select name="liste2">
<?php
 
 $resultat=mysql_query("SELECT * from BOSE ORDER BY Identifiant_produit");
  while ($donnees = mysql_fetch_array($resultat) )
   {
   $id=addslashes($donnees['Identifant_produit']);
   $nomgamme=addslashes($donnees['Nom_gamme']);
   $nomprod=addslashes($donnees['Nom_produit']);
   $type=addslashes($donnees['Type_produit']);
   $descriptif=addslashes($donnees['Descriptif']);
   $prix=addslashes($donnees['Prix']);
   $lien=addslashes($donnees['lien_image']);
?> 
<option value="<?php $donnees['Identifant_produit']; ?>" <?php echo'
'?>><?php echo $donnees['Nom_produit']; ?></option>
<?php
}
?>
</select>
</form>




<?php
 $resultat=mysql_query("SELECT * from BOSE WHERE Identifiant_produit='1'");
  while ($donnees = mysql_fetch_array($resultat) )
   {
   $id='1';
   $nomgamme=addslashes($donnees['Nom_gamme']);
   $nomprod=addslashes($donnees['Nom_produit']);
   $type=addslashes($donnees['Type_produit']);
   $descriptif=addslashes($donnees['Descriptif']);
   $prix=addslashes($donnees['Prix']);
   $lien=addslashes($donnees['lien_image']);
   echo $id;
   echo $nomprod;
?>
  
  <?php
      echo'
     <script type="text/javascript">
     personnel(\''.$lien.'\',\''.$nomprod.'\',\''.$nomgamme.'\',\''.$type.'\',\''.$prix.'\',\''.$descriptif.'\');
     //-->
     </script>
     ';
     }
     mysql_close();
  ?>



<!--fin menu2-->

<!-- fin menu1-->

Mais toujours pas d'apparition .... l'appel de la js doit peut être bugger???
0
Rejoignez-nous