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] liste déroulante avec onchange js


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 74
    Points : 25
    Points
    25
    Par défaut [PHP-JS] liste déroulante avec onchange js
    Bonjour voila j'ai un petit souci à résoudre.
    J'ai une page style_fin.php dans laquell j'ai déclaré cela:

    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>
    <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:


    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
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    <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(\''.$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>
     
     
    <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;
                         echo'
                        <script type="text/javascript">
                        personnel(\''.$nomgamme.'\',\''.$nomprod.'\',\''.$type.'\',\''.$descriptif.'\',\''.$prix.'\',\''.$lien.'\');
                        //-->
                        <!--</script>
                        ';
                echo('me voila apres persnnel');
                        }
                        mysql_close();
    ?>
     
    </div><!--fin menu2-->
    </div><!-- fin menu1-->
     
     
    Voici mon code dans personnel.js:
     
    unction 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","<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(nomgamme,nomprod,type,descriptif,prix,lien){
            disparaitre("menu2");
            setTimeout("miseajour(\""+nomgamme+"\",\""+nomprod+"\",\""+type+"\",\""+descriptif+"\",\""+prix+"\",\""+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!!!!!!!!!

  2. #2
    Membre averti Avatar de Sacha999
    Inscrit en
    Mars 2007
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mars 2007
    Messages : 294
    Points : 350
    Points
    350
    Par défaut
    Questions

    1/ Ce code qui ressemble a du PHP hors des balise php, ca ne peut que ne pas fonctionner
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    onChange="personnel(\''.$nomgamme.'\',\''.$nomprod.'\',\''.$type.'\',\''.$descriptif.'\',\''.$prix.'',\''.$lien.'\')"
    2/ T'es tu connecté a une base de donnée ? Je ne vois pas le code qui le fait dans ce que tu as mis

    3/ Pourquoi tu affectes des variables non utilisé dans le 1er While qui seront ecrasé dans le 2nd?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $descriptif=addslashes($donnees['Descriptif']);
    etc...
    Le forum c'est trop génial

Discussions similaires

  1. [PostgreSQL] liste déroulante avec postgresql + php
    Par caramel15 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 14/10/2011, 14h00
  2. [MySQL] problème de liste déroulante avec php
    Par lamou23 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 07/06/2010, 21h12
  3. Remplir une liste déroulante avec PHP
    Par beegees dans le forum Langage
    Réponses: 3
    Dernier message: 16/03/2009, 11h51
  4. [MySQL] 2 listes déroulantes avec php et mysql
    Par SHERPAE dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/12/2007, 13h04

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