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

Langage PHP Discussion :

interface web, un peu d'aide ?


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut interface web, un peu d'aide ?
    Hello à toutes et tous !

    Je me tourne vers vous afin de demander un peu d'aide !

    je suis admin réseau et système et le php n'est pas trop ma tasse de thé (d'ailleurs j'en ai jamais fait mais j'ai regardé un peu) et c'est pourquoi je viens quémander votre aide

    je récupère des données de switches cisco que je mets dans une base de données MySQL.

    Le but est d'afficher les données via une interface web. J'ai donc une bdd de N tables avec 4 champs par tables.

    Chaque table correspond à une pile de switches.

    Chaque pile est délimité dans la table par 52 entrées (toutes les 52 entrées on change donc de switches dans la pile).


    j'ai mon image de switch, j'ai les images des ports et les couleurs que je veux en fonction des infos contenues dans la bdd (si un port est en tel état alors afficher telle couleur).

    on doit pouvoir survoler à la souris sur un port d'un switch afin d'avoir certaines informations qui sont dans la bdd, et si on clique sur le port, on a les mêmes infos qui s'affichent en dessous du switch (dans un cas se sont des infos qui s'affichent au survol, dans l'autre, les infos s'affichent en "dur")

    Voilà en gros ce que j'aimerai que mon interface fasse, mais je n'ai malheureusement pas les compétences en php/css (à la rigueur un peu en css)

    si une âme charitable pouvait m'aider (ça serait pas de l'aide, ça serait de la création même) ça serait gentil ! (sinon tant pis )

    merci à vous par avance !

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ta structure N tables n'est pas bonne.
    Il faut une seule table avec une colonne pour le numéro de pile.

    Pour le reste, l'interface c'est HTML, Javascript, CSS, eventuellement Ajax.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    en quoi ma structure n'est pas bonne ?

    j'ai ma base "switch" avec dedans chaque étage, et je fais un select de l'étage et j'ai mes infos qui apparaissent, pour moi ça me parait logique (pour toi pas du tout, mais faut m'expliquer )

    pour le reste donc tu parles, je n'ai aucune connaissance dans aucun langage de programmation web, d'où ma demande (je doute qu'avec du html et du css j'arrive à avoir ce que je veux :p)


    mysql> show tables;
    +------------------+
    | Tables_in_switch |
    +------------------+
    | DCCIS7 |
    | ECCIS1 |
    | OCCIS0 |
    | OCCIS1 |
    | OCCIS2 |
    | OCCIS3 |
    | OCCIS4 |
    | OCCIS5 |
    | OCCIS6 |
    +------------------+


    mysql> select * from DCCIS7;
    +----------+--------------+-------+------------------------------+
    | Port | Status | Vlan | Description |
    +----------+--------------+-------+------------------------------+
    | Gi1/0/1 | disabled | 99 | PORT-RESERVE |
    | Gi1/0/2 | notconnect | 9 | PC-DOT1X |
    | Gi1/0/3 | notconnect | 9 | PC-DOT1X |
    | Gi1/0/4 | connected | 9 | BAROMETRE-MURAL-1 |
    | Gi1/0/5 | connected | 14 | PABX-Doublon-solution-switch |
    | Gi1/0/6 | connected | 13 | boitier-controle-acces |


    etc...

    mysql> select * from DCCIS7 where Port = "Gi1/0/52" ;
    +----------+-----------+-------+------------------+
    | Port | Status | Vlan | Description |
    +----------+-----------+-------+------------------+
    | Gi1/0/52 | connected | trunk | DCCORE5-Gi3/0/52 |
    +----------+-----------+-------+------------------+


    pour moi ma structure me parait cohérente, je me suis peut être mal exprimé dans mon post précédent

  4. #4
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 224
    Points
    20 224
    Par défaut
    Si tes tables DCCIS7 ,ECCIS1, OCCIS0 on la même structure ( Port | Status | Vlan | Description) alors ton architecture n'est pas bonne comme le précise Sabotage.
    Tu devrais avoir une table avec la structure : Port | Status | Vlan | Description | Pile

    Ce qui donnerait des requêtes du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from switches where Port = "Gi1/0/52" AND Pile =  "DCCIS7"
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    Qu'elle ne soit pas bonne ok, mais on peut expliquer ? (merci !)

    mais après, ça ne résous pas mon problème initial ! :p

  6. #6
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 627
    Points
    3 627
    Billets dans le blog
    8
    Par défaut
    Pourquoi elle n'est pas bonne ?
    Parce que dans une base, tu ne vas pas faire 200 tables avec la même structure et juste un nom différent. C'est une redondance et la redondance, c'est mal en base de données.
    Pourquoi on ne peut pas t'aider ?
    Parce que ce que tu veux faire relève du javacript, pas du PHP. Il faut que tu ailles voir le forum js... c'est tout, c'est pas de la mauvaise volonté. Nothing personnal
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  7. #7
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    le problème c'est la gueule des mes fichiers que je mets dans la bdd (mais je comprends le côté redondant)


    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
    Gi1/0/1 disabled 99 PORT-RESERVE
    Gi1/0/2 notconnect 9 PC-DOT1X
    Gi1/0/3 notconnect 9 PC-DOT1X
    Gi1/0/4 connected 9 BAROMETRE-MURAL-1
    Gi1/0/5 connected 14 PABX-Doublon-solution-switch
    Gi1/0/6 connected 13 boitier-controle-acces
    Gi1/0/7 connected 9 PC-STICKY
    Gi1/0/8 connected 9 PC-STICKY
    Gi1/0/9 connected 9 PC-STICKY
    Gi1/0/10 connected 9 PC-STICKY
    Gi1/0/11 connected 9 PC-STICKY
    Gi1/0/12 connected 9 PC-STICKY
    Gi1/0/13 connected 9 PC-STICKY
    Gi1/0/14 connected 9 PC-STICKY
    Gi1/0/15 connected 9 PC-STICKY
    et c'est un "join" sous linux de 2 fichiers (et de traitements) afin d'arriver à ce rendu final (donc rajouter une information de pile comme ça, mouais mais je vais regarder)

    Alors, pourquoi ce n'est pas possible en PHP mais en java ? (ou plus simple en java peut être ?)

    merci pour les infos !

  8. #8
    Membre éprouvé Avatar de patrickbaras
    Homme Profil pro
    Informaticien (à sa mémère).
    Inscrit en
    Septembre 2010
    Messages
    525
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Informaticien (à sa mémère).
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 525
    Points : 1 103
    Points
    1 103
    Par défaut
    voici une base , lorsque tu laisse ton curseur sur un des images il affiche les informations

    crée un ficier php avec le code suivant
    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
    <?php
    $host='localhost'; //changer par ton host mysql
    $user='root';//changer par ton user mysql
    $password='*****'; //changer par ton password
    $database='switch'; //changer par le nom de la DB qui contient les tables
    $switch='DCCIS7'; //changer par le nom de la table (switch)
     
    $link = mysql_connect($host, $user, $password) or die("Impossible de se connecter : " . mysql_error());
    mysql_select_db($database); 
     
    $querySql="select * from ".$switch;
    $data=mysql_query($querySql);
     
     
    //tu a besoin des 3 images connected.png, notconnect.png, disabled.png
     
    echo "<table border='1'>";
    echo "<tr>";
    echo "<td colspan='6' align='center'>";
    echo $switch;
    echo "</td>";
    echo "</tr>";
    echo "<tr>";
    while($dato = mysql_fetch_array($data)) 
    {
    	echo "<td>";
    	echo $dato['port']."<br/>";
    	echo "<img src='".$dato['status'].".png'";
    	echo "alt='".$dato['port']."
    ".$dato['status']."
    ".$dato['vlan']."
    ".$dato['description']."' ";
    	echo "title='".$dato['port']."
    ".$dato['status']."
    ".$dato['vlan']."
    ".$dato['description']."'";
    	echo ">";
    	echo "</td>";
    }
    echo "</tr>";
    echo "<table>";
    ?>
    Images attachées Images attachées    
    ce message vous a aidé ! Un petit click sur fait toujours plaisir

    "Nos études ont montré que la probabilité qu’un programme corrigé fonctionne comme avant la correction est seulement de cinquante pour cent." Bev Littlewood & Lorenzo Strigini

    "Le logiciel, c’est comme le sexe, c’est meilleur quand c’est libre/gratuit." Linus Torvalds

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 42
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par patrickbaras Voir le message
    voici une base
    Euh... comment dire ? On est en 2014, ce genre de code a plus sa place en 2004. Si on pouvait éviter d'orienter un débutant vers du code spaghetti basé sur des fonctions obsolètes ça serait pas un luxe.

  10. #10
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    on se calme ! :p

    on est là pour me donner des pistes ! :p

    bon j'essaie de tout mettre dans une seule table mais ça me parfait chiant à faire d'aller rajouter une colonne pour le "fun"

    merci à vous en tout cas, je file m'orienter du côté de nos amis en .js

  11. #11
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    mais ça me parfait chiant à faire d'aller rajouter une colonne pour le "fun"
    Ce n'est pas pour le fun.
    Imagine par exemple qu'un équipement change de pile ou que tu veuilles lister tous les ports sur un vlan, ou le nombre de port ouverts.
    Aller piocher les informations dans toutes les tables c'est un bordel.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  12. #12
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    négatif, car c'est moi qui structure ma base et mes tables, mes fichiers sont traités par moi en prenant que 4 colonnes, donc les infos ne risquent pas de changer en fait (d'où mon étonnement sur ce que vous me disiez et que je préférais avoir une table pour chaque pile de switches en fait, j'aime quand c'est structuré et rapide à comprendre, enfin de mon point de vue )

    en fait, aucune information n'est affiché dynamiquement (à part via la bdd qu'on doit MAJ) mais si je modifie une info sur un switch j'aurais pas la MAJ en temps réel via l'interface web, c'est juste que je veux réinventer la roue de cisco qui met à dispo une interface web mais sur leurs équipements directement, et moi (pour des raisons de sécu) je ne veux pas activer une couche applicative sur un switch qui est supposé faire que du niveau 2 et non 7



    et pour t'expliquer un peu plus, voilà un peu le délire :

    http://pa-errard.com/james/status/dccis7-shintstatus
    http://pa-errard.com/james/description/dccis7-shintdesc

    et j'arrive à un fichier final : http://pa-errard.com/james/final/DCCIS7

    et après je mets dans la bdd (bon j'ai mis ma colonne pile, et j'ai refait ma table comme vous le préconisiez)

  13. #13
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 627
    Points
    3 627
    Billets dans le blog
    8
    Par défaut
    j'aime quand c'est structuré et rapide à comprendre
    Oui, mais ce qui est intuitif pour un humain n'est pas toujours intuitif pour une machine et vice-versa.
    En base de données, modéliser est assez peu intuitif au départ et ceux qui partent de leur première intuition font énormément de redondance et ne s'en rendent compte que quand leur base commence à leur paraître pourrie.
    En général, quand on range les données proprement dans une base, c'est tout à fait du chinois pour un humain, qui se voit contraint de faire des vues (ce qui n'est pas ton cas ici, un simple filtre suffit) pour remettre tout ça sur "pieds".
    Bon enfin, contente que ton problème soit résolu.
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  14. #14
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    yup je comprends ^^ (mais la hierarchie c'est le bien en réseau et système pas forcément en BDD où effectivement, il faut que ça aille vite point de vue requête et éviter les redondances)

    ne sois pas encore contente que ça soit résolu ! :p j'ai juste changé le thread de place pour demander dans le forum .js

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 10/01/2019, 15h00
  2. Réponses: 6
    Dernier message: 25/02/2015, 11h17
  3. Interface Web, un peu d'aide ?
    Par tetzispa dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 19/03/2014, 10h22
  4. un peu d'aide pour mon interface
    Par mspeach dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 17/09/2009, 17h58
  5. Cherche RAD pour la réalisation d'interfaces Web/swing
    Par RocketArena dans le forum EDI et Outils pour Java
    Réponses: 2
    Dernier message: 14/09/2004, 13h22

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