IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[PHP-JS] js onchange liste déroulante:


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 74
    Par défaut [PHP-JS] js onchange liste déroulante:
    Bon ba je repost comme hier en espérant qu'on pourrait m'aider, j'ai une liste déroulante et lorque je selectionne un produit de cette liste doit s'afficher dans une div a côté le produit et ces paramètres situées tous dans la même table.
    Mais voila rien ne marche je récupère bien mes données en php mais l'appel de la fonction js ne marche pas....ou son fonctionnement aussi parce que je n'arrive pas encore à identifier l'erreur....

    voila ma page sur laquel tout se passe.
    home_cinema.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
     
    <div id="menu1" style="position:absolute; top:106px; width: 733px; height:600px; left: 2px;">
    S&eacute;lectionnez le produit:
    <br>
    <br>
    <form name="f">
    <select name="liste2" onChange="personnel(\''.$lien.'\',\''.$nomprod.'\',\''.$nomgamme.'\',\''.$type.'\',\''.$prix.'',\''.$descriptif.'\')">
    <?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>
     
     
    <div id="menu2" style="position:absolute; left: 11px; top: 65px; width: 715px; height: 700px;">
    <?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();
                    ?>
     
    </div><!--fin menu2-->
    </div><!-- fin menu1-->
    Voici ma fonction js personnel.js :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    		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(lien,nomprod,nomgamme,type,prix,descriptif){
    		Element.update("menu2","<div><img src=\""+lien+"\" alt=\"produit\"/></div><br><br><div><ul><li>"+nomprod+"</li><li>"+nomgamme+"</li><li>"+type+"</li><li>"+prix+"</li><li>"+descriptif+"</li></ul></div>");
    		}
     
    		function personnel(lien,nomprod,nomgamme,type,prix,descriptif){
    		disparaitre("menu2");
    		setTimeout("miseajour(\""+lien+"\",\""+nomprod+"\",\""+nomgamme+"\",\""+type+"\",\""+prix+"\",\""+descriptif+"\")",1075);	
    		setTimeout("apparaitre(\"menu2\");",1100);
    		}
    Voila j'ai intégré l'appel des fonctions js et de scriptaculous, effect , prototype et personnel dans le head de la page ou est inclus home_cinema.php de la sorte:


    sur un page style_fin.php (où est inclus home_cinema.php)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <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>
    Voila si quelqu'un pourrait me répondre sa serait vraiment cool....

  2. #2
    Membre Expert Avatar de Barsy
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    1 484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 484
    Par défaut
    Ce que tu fais ne marchera pas, tu appelles une fonction javascript en lui mettant des paramètres php.

    Ce n'est pas possible. On ne peut pas appeller du php via Javascript.

    Ce que tu dois faire, c'est au niveau du <select>

    tu fais un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <select name="liste2" onChange="personne1(this.selectedIndex)">
    Pour passer les autres paramètres dans la fonction personne1, il te faudra soit tous les passer dans un tableau en le créant via javascript, soit en utilisant Ajax...

  3. #3
    Membre très actif Avatar de Sacha999
    Inscrit en
    Mars 2007
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Mars 2007
    Messages : 294
    Par défaut
    stop les double post
    http://www.developpez.net/forums/sho...d.php?t=543336

    et merci de répondre aux questions qu'on te poses si tu veux de l'aide

Discussions similaires

  1. [PHP-JS] affiche selon liste déroulante
    Par cell dans le forum Langage
    Réponses: 10
    Dernier message: 10/12/2006, 22h39
  2. [PHP-JS] Problème de liste déroulante
    Par lepovre dans le forum Langage
    Réponses: 6
    Dernier message: 16/11/2006, 19h17
  3. [PHP-JS] Création de liste déroulante dynamique
    Par eeckhout dans le forum Langage
    Réponses: 2
    Dernier message: 28/02/2006, 13h41
  4. Réponses: 8
    Dernier message: 28/11/2005, 14h41
  5. [PHP-JS] Lier deux listes déroulantes
    Par budiste dans le forum Langage
    Réponses: 6
    Dernier message: 15/11/2005, 15h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo