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 :

[JS + PHP] Replier un tableau


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Novembre 2007
    Messages : 146
    Par défaut [JS + PHP] Replier un tableau
    Bonsoir à tous,

    je viens a vous car je suis un peu perdu ...

    En rapidos, j'ai un menu fait avec des td et tr (html) pour mettre les images qui servent de contour etc ...
    A un moment, j'insert le contenu du menu, pusi après je referme tout.

    Mon menu est divisé en 2. Une fonction open() pour le debut du tableau, et close() pour la fin du tableau

    Ex :
    open("test");
    print "Mwhaha";
    close();


    Le contnu précis de mes deux fonctions :
    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
    function open($caption = "-", $align = "justify"){
            global $THEME;
        global $site_config;
        print("<table class=\"NB-block\" width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
    <tr>
    <td valign=\"top\" width=\"100%\">
    <table class=\"NB-bhead\" width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
    <tr>
    <td width=\"10\" height=\"24\" class=\"NB-btl\"><img src=\"".$site_config['SITEURL']."/themes/NB-TSpy/images/blank.gif\" style=\"display: block;\" height=\"24\" width=\"10\"></td>
    <td width=\"100%\" height=\"24\" class=\"NB-btms\" onclick=\"affCache('$caption');\">$caption</td>
    <td width=\"9\" height=\"24\" class=\"NB-btr\"><img src=\"".$site_config['SITEURL']."/themes/NB-TSpy/images/blank.gif\" style=\"display: block;\" height=\"24\" width=\"9\"></td>
    </tr>
    </table>
    <table class=\"NB-bbody\" width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
    <tr>
    <td width=\"5\" class=\"NB-bml\"><img src=\"".$site_config['SITEURL']."/themes/NB-TSpy/images/blank.gif\" style=\"display: block;\" height=\"2\" width=\"5\"></td>
    <td valign=\"top\" class=\"NB-bmm\"><div id=$caption>");
    }
    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
    function close(){
        global $THEME;
        global $site_config;
        print("</div></td>
    <td width=\"5\" class=\"NB-bmr\"><img src=\"".$site_config['SITEURL']."/themes/NB-TSpy/images/blank.gif\" style=\"display: block;\" height=\"2\" width=\"5\"></td>
    </tr>
    </table>
    <table class=\"NB-bfoot\" width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
    <tr>
    <td width=\"11\" height=\"9\" class=\"NB-bbl\"><img src=\"".$site_config['SITEURL']."/themes/NB-TSpy/images/blank.gif\" style=\"display: block;\" height=\"9\" width=\"11\"></td>
    <td width=\"100%\" height=\"9\" class=\"NB-bbm\"><img src=\"".$site_config['SITEURL']."/themes/NB-TSpy/images/blank.gif\" style=\"display: block;\" height=\"9\" width=\"100%\"></td>
    <td width=\"9\" height=\"9\" class=\"NB-bbr\"><img src=\"".$site_config['SITEURL']."/themes/NB-TSpy/images/blank.gif\" style=\"display: block;\" height=\"9\" width=\"9\"></td>
    </tr>
    </table></td>
    </tr>
    </table>
    <BR>");
    }
    Code JS pour plier :
    function affCache(idDiv) {
    var div = document.getElementById(idDiv);
    if (div.style.display == "")
    div.style.display = "none";
    else
    div.style.display = "";
    }
    (merci à mathieu

    Lorsque je clique sur le nom du "menu" j'aimerai que ce que contient celui-ci ce réduise ou alors se déplie et surtout qu'il reste si on change de page. Car pour deplier et plier j'y arrive.

    Auriez vous une petite idée ?

    J'avais pensé à un cookie ...

    Cordialement

  2. #2
    Membre Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par défaut
    Salut,

    D'abord, je t'encourage à regarder la syntaxe heredoc pour les chaines en PHP C'est quelque chose du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $s= <<<EOT
    My name is "$name". I am printing some $foo->foo.
    Now, I am printing some {$foo->bar[1]}.
    This should print a capital 'A': \x41
    EOT;
    Ensuite
    Lorsque je clique sur le nom du "menu" j'aimerai que ce que contient celui-ci ce réduise ou alors se déplie et surtout qu'il reste si on change de page
    tu dois conserver l'information de l'état de ton menu entre deux pages donc tu n'as pas grand choix: soit tu transfères l'information vers le server PHP qui la renvoie vers la nouvelle page, soit tu crées un cookie que tu utilises ensuite pour regénérer ton menu.

    ERE

  3. #3
    Membre confirmé
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Novembre 2007
    Messages : 146
    Par défaut
    Merci pour ta réponse

    Je connais en effet les syntaxes pour le PHP et les string. Mais ici ca ne bug pas puisque c'est dans la fonction print ("") que je met les variables entre quote.

    Pour garder en memoire l'état du menu, entre deux pages je prefère pas envoyer l'info de page en page, sachant que je dois avoir 7 menus, et que je suis amené à en afficher de nouveau et enlever des anciens.

    J'ai donc pensé aux cookies, mais je n'arrive pas a récuperer la valeur d'un cookie pour la mettre devant la balise style display pour afficher ou pas le contenu du tableau et donc plier ou pas le tableau ...
    cf : http://www.developpez.net/forums/d83...-style-cookie/

Discussions similaires

  1. [PHP-JS] Transferer tableau php a javascript
    Par stephane92400 dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 12/07/2006, 14h05
  2. [Conception] Résultat d'une requête PHP dans un tableau avec lien ?
    Par DjMaC dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 25/04/2006, 20h37
  3. Javascript + PHP => checkbox et tableau incompatibles
    Par Matth_S dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 21/02/2006, 15h38
  4. [PHP] trier un tableau dynamiquement
    Par caro. dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 31/01/2006, 17h08
  5. Réponses: 2
    Dernier message: 20/11/2005, 18h54

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