begin process at 2012 05 31 05:04:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

pb de dynamisation d'un menu


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

pb de dynamisation d'un menu

jeudi 5 août 2004 à 11:28:30 | pb de dynamisation d'un menu

Tchii28

Bonjour,

Je dois faire en sorte que certains titres du menu n'y apparaissent pas suivant la personne qui se connecte. Hors toutes les caractéristiques du menu sont dans un config.ini et lors de l'affichage si je retire l'un des sous menus alors tous ceux qui sont aprés lui dans config.ini ne s'affichent pas.

pour vous aider à m'aider ;-) voici le code que j'effectue


; Ce fichier INI contient des informations relatives au menu dynamique, à la couleur et à différentes adrèsses mail contenus
; dans la partie web de GPC.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; INFORMATIONS GENERALES ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Cette variable "couleur" correspond à la couleur du menu déroulant de la partie web de GPC.
; Voici les codes de 2 couleurs : bleu => #000099 (GPC)
; rouge => #DC122A (ED)
couleur = #000099

;Cette variable correspond à la couleur du fond d'une cellule quand le pointeur de la souris passe au-dessus.
couleurFond = #a1a1a1

; Cette variable "mail1" correspond à l'adresse mail de l'onglet factureCC dans Compteclient
mailFactureCC = support@effetdirect.com

; Cette variable "mail2" correspond à l'adresse mail de l'onglet versementCC dans Compteclient
mailVersementCC = vlakomy@effetdirect.com
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MENU DYNAMIQUE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Cette partie correspond au menu dynamique. Ce menu est divisé en pluieurs sections qui
; qui contiennent chacunes un certain nombre de liens.
; Voici les explications des différents champs:
; Une section correspond a un menu.
; titre -> correspond au libélé de chaque menu
; pos (type : entier) -> correspond à la distance du bord gauche de la cellule du menu par rapport au bord gauche de la page
; (pour presentation)
; width (type : entier) -> longueur de la cellule du menu
; widthMenu (type : entier) -> Longueur des sous-menus
; champsI -> libéllé d'un sous-menu du menu
; espaceI (type : entier) -> nb d'espace a rajouter apres champsI pour completer la cellule
; lienI -> lien associé au libéllé du sous-menu de memenumero

[section1]
titre = Comptesclients
pos = 0
width = 110
widthMenu = 113
champs1 = Ouvrir
espace1 = 23
lien1 = ../Membres/listerCC.php

[section2]
titre = Recouvrement
pos = 112
width = 130
widthMenu = 131
champs1 = Saisie
espace1 = 30
lien1 = ../Membres/recouvrement.php
champs2 = Import CC
espace2 = 21
lien2 = ../Membres/importNewCC.php
champs3 = Edition des refus
espace3 = 9
lien3 = ../Membres/editionRefusNewCC.php

[section3]
titre = Litiges
pos = 243
width = 170
widthMenu = 168
champs1 = Litiges
espace1 = 41
lien1 = ../Reporting/indexLitiges.php
champs2 = Liste litiges
espace2 = 32
lien2 = ../Reporting/listelitiges.php
champs3 = Délai moyen de résolution1
espace3 = 1
lien3 = ../Reporting/delaiMoyenRes.php
champs4 = Délai moyen de résolution2
espace4 = 1
lien4 = ../Reporting/delaiMoyenResLitiges.php

[section4]
titre = Editions
pos = 411
width = 175
widthMenu = 173
champs1 = Balance agées
espace1 = 27
lien1 = ../Reporting/listerBalance.php
champs2 = Etat des relances préventives
espace2 = 0
lien2 = ../Reporting/indexRelancePrev.php
champs3 = Etat RJ/LJ
espace3 = 34
lien3 = ../Reporting/indexRJLJ.php
champs4 = Editions libres
espace4 = 28
lien4 = ../Reporting/listeParam.php

[section5]
titre = Reporting
pos = 584
width = 180
widthMenu = 178
champs1 = Cash Management
espace1 = 21
lien1 = ../Reporting/indexMgt.php
champs2 = CA
espace2 = 51
lien2 = ../Reporting/CACritere.php
champs3 = Tableau de bord de production
espace3 = 0
lien3 = ../Reporting/indexTableauBord.php
champs4 = Détail activité
espace4 = 29
lien4 = ../Reporting/index.php
champs5 = Détail encours
espace5 = 29
lien5 = ../Reporting/index2.php
champs6 = Indice d'éfficacité du recouvrement
espace6 = 0
lien6 = ../Reporting/indexIER.php

[section6]
titre = Workflow
pos = 762
width = 120
widthMenu = 120
champs1 = Ouvrir
espace1 = 25
lien1 = ../workflow/workflow.php

[section7]
titre = Quitter
pos = 882
width = 100
widthMenu = 101
champs1 = Déconnecter
espace1 = 6
lien1 = ../identification.php
champs2 = Quitter
espace2 = 17
lien2 = ../identification.php

voila la fonction qui affiche le menu

function construire() {
$tabINI = parse_ini_file("../config.ini",true);
$obj_internaute = new internaute();
$obj_internaute = $_SESSION ["internaute"];

if ($tabINI["couleur"]=="" || $tabINI["mailFactureCC"]=="" || $tabINI["mailVersementCC"]==""
|| $tabINI["couleurFond"]=="") {
sessionInvalide("../Fonctions/ErreurConfiguration.php");
}
else {
$this->setCouleur($tabINI["couleur"]);
$this->setMailFactureCC($tabINI["mailFactureCC"]);
$this->setMailVersementCC($tabINI["mailVersementCC"]);
$this->setCouleurFond($tabINI["couleurFond"]);
}

/*if ($obj_internaute ->getSuperUser() == 1)
$longtab = (sizeof($tabINI)-5)) ;
else $longtab = (sizeof($tabINI)-4);
*/

//for ($cpt=0; $cpt<(sizeof($tabINI)-4); $cpt++) {
//test si les titres, pos, width et widthMenu sont non nuls et si pos, width, widthMenu sont des entiers
$cpt =0;
$fini = 0;

while ( $cpt < (sizeof($tabINI)-4) && $fini != 1 ) {


if ($tabINI["section".($cpt+1)]["titre"] == "" || $tabINI["section".($cpt+1)]["pos"] == ""
|| $tabINI["section".($cpt+1)]["width"] == "" || $tabINI["section".($cpt+1)]["widthMenu"] == ""
|| ((string)((int)$tabINI["section".($cpt+1)]["pos"]) != $tabINI["section".($cpt+1)]["pos"])
|| ((string)((int)$tabINI["section".($cpt+1)]["width"]) != $tabINI["section".($cpt+1)]["width"])
|| ((string)((int)$tabINI["section".($cpt+1)]["widthMenu"]) != $tabINI["section".($cpt+1)]["widthMenu"])
) {
sessionInvalide("../Fonctions/ErreurConfiguration.php");
}

else {
for ($ind=0; $ind<(sizeof($tabINI["section".($cpt+1)])-4)/3; $ind++) {
// Test si champs, espace et lien sont non nuls et si espace est un entier
if ($tabINI["section".($cpt+1)]["champs".($ind+1)]=="" || $tabINI["section".($cpt+1)]["lien".($ind+1)]==""
|| $tabINI["section".($cpt+1)]["espace".($ind+1)] == ""
|| ((string)((int)$tabINI["section".($cpt+1)]["espace".($ind+1)]) != $tabINI["section".($cpt+1)]["espace".($ind+1)])
)
sessionInvalide("../Fonctions/ErreurConfiguration.php");
}

if (($obj_internaute ->getSuperUser() == 1 && $cpt != 5) || ($obj_internaute ->getSuperUser() != 1)){
$this->setTabSection(Array(),$cpt);
$this->setTabSection($tabINI["section".($cpt+1)],$cpt);
}
if (($obj_internaute ->getSuperUser() == 1) && $cpt == 5) $fini = 1;

$cpt++;
}

} //fin boucle


if ($obj_internaute ->getSuperUser() == 1 && $fini == 1){
$nb = 6;
$tabINI["section".($nb+1)]["pos"] = $tabINI["section".($nb)]["pos"];
$this->setTabSection(Array(),$nb);
$this->setTabSection($tabINI["section".($nb+1)],$nb);
}

}

Voila donc je ne veux pas afficher le num 6 donc j'arrete à 5 et après la boucle j'essaie d'afficher le num 7 mais ça ne fonctionne pas.
Je pense qu'il y a un pb avec la boucle.
Si vous avez des idées je suis preneuse.
merci,

Tchii28
jeudi 5 août 2004 à 16:28:28 | Re : pb de dynamisation d'un menu

ronanf235

slt

je pige pas comment pourquoi tu veux faire comme ca, tout est ecrit en dur donc si jamais tu enleve le 3e elt tu fais une autre fct :
si tu ve pas afficher un indice (ou une liste d'indice interdit)
pourquoi tu ne fais pas une simple boucle

faire pour tous {
$id = 0; // indice dans ton fichier
$nbElem = 0; //nb d'elem dans la liste

si valide($id) alors

affichage;
$id++;
$nbElem++;

sinon

$id++;

fsi

}

et ta fonction valide verifie si l'indice $id est autorise par les droits de l'utilisateur

sinon pour le code que tu as mis, si ca passe pas dans ton if pour afficher le 7e, c'est que l'une des conditions n'est pas satisfaite....
une seule solution trouver laquelle, et voir pourquoi etr surtout si c normal
et la une seule solution : les affichages, mettre des echos partout et voir ce qui se passe

bon courage

ronan


Cette discussion est classée dans : menu, php, reporting, pos, tabini


Répondre à ce message

Sujets en rapport avec ce message

Menu deroulant php +access [ par lapinou95 ] Lapinouuuuukikoo ,voi formmail.php [ par pyranhaz ] J'ai un formmail en phpIl fait bien son travail et je l'apprécie, mais il y a un hic assez énervant qui m'échappe...Tous les menus déroulant ne peuven script airwick_menu [ par marin123 ] Bonjour,j'utilise le script airwick_menu pour mon site. Il fonctionne tres bien sur free.fr mais quand je veux aller sur l'hébergeur www.lsdp.net il m Sessions PHP et Frames HTML [ par floceam ] Salut, J'utilise les sessions php pour identifier les clients sur un espace réservé. De plus j'ai divisé ma page en deux horyzontalement, c'est a dir tableau en php [ par psychodingue ] Bonjours tout le monde,Moi j'ai un gros problème, je vais essayer de vous expliquer facilement...Voilà, je suis en train de faire le site d'un magasin php rafficher choix dans un menu deroulant apres un post [ par yetomell ] HELP PLEASEg un peu le meme probleme: j'utilise une variable pour stocker mon choix et je n'arrive pas a mettre en place une condition pour afficher p Menu dynamique PHP [ par zorax69 ] Hello,Je voudrais faire un menu vertical du type :gamme1___sous-gamme11______produit1______produit2___sous-gamme12______produit5______produit7gamme2__ pseudo frames imbriquées [ par attentio ] bonjour a tous, voila mon probleme, ...je m'obstine desesperement a vouloir imbriquer une pseudo frame dans une autre pseudo frame ... cad qu'une fois Supprimer un fichier en php [ par johaaanns ] Bonjour a tous !J'aimerais savoir comment on supprime un fichier en php...En gros j'ai un syteme d'administration ou quand on supprime un menu...les p php: Menu déroulant [ par manu22 ] Bonjour à tous,Je veux modifier les données personnels d'un de mes abonnés, pour cela j'ai une page qui s'affiche avec toutes leurs données que je peu


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,437 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales