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 :

[Tableaux] Tableau multidimensionnel associatif


Sujet :

Langage PHP

Vue hybride

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 145
    Par défaut [Tableaux] Tableau multidimensionnel associatif
    Hello,

    je m'emmèle un peu les pinceaux avec les tableaux multidimensionnels...

    Voici mon problème : je voudrais créer un tableau de tarifs transports me permettant de trouver facilement le tarif entre tel bled intermédiaire et tel autre...je récupèrerais un fichier plat qui pourrait ressembler à ça et il faudrait que je remplisse un tableau:

    Vide- Ville1 Ville2 Ville3
    Ville1 0€ 1€ 3€
    Ville2 1€ 0€ 1,5€
    Ville3 3€ 1,5€ 0€

    Ainsi si je pouvais remplir un tel tableau, je pourrais en récupérer les valeurs
    de cette façon :

    $mon_tarif=$tab['ville2']['ville3']

    Ce qui me donnerait 1,5€ comme résultat.

    Pensez vous que créer un tel tableau soit possible ? Comment ?

    Merci
    Anne

  2. #2
    Membre émérite
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Par défaut
    et avec une BD ?

    table tarifs_trajets
    id_trajet, ville_depart, ville_arrivee, tarif
    Dia [ Page DVP ] [ Site pro ]

  3. #3
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Par défaut
    Ca devrait être très simple, mais ça dépend beaucoup du format de tes données d'entrée. C'est vraiment un fichier plat, ou autre chose ?

    Si tu cherches à faire de la cartographie, j'ai l'impression que mysql possède des fonctions puissantes, mais je ne les connais pas.
    En entrant la distance entre les points sous forme de tarifs, on doit pouvoir faire des choses étonnantes.
    http://dev.mysql.com/doc/refman/5.0/...xtensions.html

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 145
    Par défaut
    Citation Envoyé par guidav
    Ca devrait être très simple, mais ça dépend beaucoup du format de tes données d'entrée. C'est vraiment un fichier plat, ou autre chose ?

    Si tu cherches à faire de la cartographie, j'ai l'impression que mysql possède des fonctions puissantes, mais je ne les connais pas.
    En entrant la distance entre les points sous forme de tarifs, on doit pouvoir faire des choses étonnantes.
    http://dev.mysql.com/doc/refman/5.0/...xtensions.html
    Merci pour ce tuyau mais alors là je suis dépassée : en plus je n'ai pas de notion dans ma base de distances...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 145
    Par défaut
    Oui c'est vrai mais il se trouve que j'ai déjà crée ma base de la façon suivante:

    id_ligne, ville, heure, ordre

    De sorte que j'ai une table qui ressemble à ça :

    1, ville1, 8:00, 1
    1, ville2, 9:00, 2
    1, ville3, 9:30, 3
    1, ville4, 10:00, 4
    2, ville1, 8:30, 1
    2, ville2, 9:00, 2
    2, ville5, 9:30, 3
    2, ville10, 11:00, 4
    2, ville3, 11:10, 5

    Et je récupère mon trajet avec un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT a.id_ligne AS ligne, a.ville AS Ville_départ,a.heure AS Heure_départ, b.ville AS Ville_arrivée, b.heure, AS Heure_arrivée 
    FROM horaires a, horaires b
    WHERE a.id_ligne = b.id_ligne and (a.ville like '$depart%') AND (b.ville like '$arrivee%') AND a.ordre < b.ordre
    et maintenant je voudrais intégrer cette notion de tarification mais je ne vois pas comment? Je pensais que je pourrais récuperer auprès du transporteur leur grille de tarification par ligne qui serait de la forme que j'ai décrite plus haut et que du coup je pourrais en faire un tableau multidimensionnel pour en récupérer les valeurs mais ça n'est peut-être effectivement pas la meilleure solution...

    Merci

  6. #6
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Par défaut
    Tout dépend si ta tarification est exactement proportionnelle au temps de parcours. Sinon il faut la récupérer auprès de ton transporteur.
    Avec par exemple
    id_ligne, ville, heure, ordre, prix
    1, ville1, 8:00, 1,0
    1, ville2, 9:00, 2,10
    1, ville3, 9:30, 3,15
    1, ville4, 10:00, 4,20
    2, ville1, 8:30, 1,0
    2, ville2, 9:00, 2,5
    2, ville5, 9:30, 3,10
    2, ville10, 11:00, 4,25
    2, ville3, 11:10, 5,28
    Avec des prix incrémentaux d'une ville à l'autre.
    Mais je pense que l'idéal serait de connaître la règle de calcul du prix, et d'ajouter les données nécessaires (la distance par exemple) dans ta table.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 145
    Par défaut
    Citation Envoyé par guidav
    connaître la règle de calcul du prix, et d'ajouter les données nécessaires (la distance par exemple) dans ta table.
    Et oui mais tout le problème est là, les transporteurs ne sont pas disposés à me fournir ces données (qu'ils n'ont même pas à mon avis)...

  8. #8
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Par défaut
    Si tu as des données suffisantes, tu peux essayer d'établir une corrélation entre le prix et le temps de trajet, avec un peu de chance c'est linéaire (je crois par exemple qu'à la sncf, les prix sont linéaires avec la distance, selon le type de ligne).
    Sinon il faut intégrer les tarifs, les transporteurs les ont forcément. Après, encore faut-ils qu'ils soient disposés à te les passer, en effet.

Discussions similaires

  1. Extraire d'un tableau multidimensionnel/associatif
    Par laloune dans le forum Langage
    Réponses: 4
    Dernier message: 01/09/2014, 14h43
  2. [Tableaux] tableau multidimensionnel
    Par Biosox dans le forum Langage
    Réponses: 3
    Dernier message: 15/03/2007, 17h41
  3. [Tableaux] Tableau Multidimensionnel
    Par Captain_futur dans le forum Langage
    Réponses: 3
    Dernier message: 09/12/2005, 21h37
  4. Réponses: 2
    Dernier message: 27/11/2005, 23h36
  5. [Tableaux] Tableau associatif
    Par anzar dans le forum Langage
    Réponses: 3
    Dernier message: 24/10/2005, 11h17

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