Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/10/2007, 10h58   #1
Membre extrêmement actif
 
Avatar de lodan
 
Inscription : juin 2006
Messages : 1 804
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 1 804
Points : 587
Points : 587
Par défaut déplier, plier une arborescence de script

Bonjour,

Je ne sais pas si le terme de plier est approprié, mais c'est l'image que j'en ai.

Voici mon besoin :

J'ai un script A qui fait une recherche de compte client, il affiche les comptes, j'en choisi 1, et il enchaine sur un script B qui affiche le compte choisi.

Sur ce script B j'affiche un certains nombre d'information donc les commandes du client. Je peu choisir une commande pour la modifier et il enchaine sur un script C d'affichage de la commande choisi et ainsi de suite je peu descendre dans l'arborescence des scripts.

Pour gérer cette arborescence, j'ai fait un array que je stocke dans $_SESSION. je peu donc ensuite remonter mon arborescence.

Est-ce une bonne méthode ?

Merci d'avance.
__________________
Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.
lodan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2007, 15h58   #2
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
C'est une solution valable en effet pour gérer les retours en arrière dans l'arborescence.
Ceci dit, tu peux aussi créer une arborescence sous forme de menu. Tu as un lien "liste clients" qui appelle la page de la liste des clients, puis un lien "détail client XXX" qui mène aux détails du client etc..
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2007, 17h45   #3
Membre extrêmement actif
 
Avatar de lodan
 
Inscription : juin 2006
Messages : 1 804
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 1 804
Points : 587
Points : 587
Voici le code que j'utilise :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Enchainement de l'arborescence des scripts ascendant/descendant
// En début de chaîne de script, initalisation des valeur :
// $_SESSION['arboscript'] = array(); pour le nom des scripts
// $_SESSION['arbotrt'] = array(); pour le type de traitement demandé (modifier, supprimer, ajouter)
// $_GET["send_trt"] contient la demande de traitement du script précédent
function ArboRescence($pgmEnCours)
{
	global $retour, $demande_trt;
	// Le script actuel est-il dans l'arborescence, si non je l'ajoute
	if(!in_array($pgmEnCours, $_SESSION['arboscript'])) $_SESSION['arboscript'][] = $pgmEnCours;
	// Le script actuel est placé où dans l'arborescence
	$key = array_search($pgmEnCours, $_SESSION['arboscript']);
	// Le script de retour est le script - 1
	$keyretour = $key - 1;
	$retour = $_SESSION['arboscript'][$keyretour];
	// Le script d'où je viens + 1 dans la remontée est effacé avec son type de traitement demandé
	$keyannul = $key + 1;
	unset($_SESSION['arboscript'][$keyannul]);
	unset($_SESSION['arbotrt'][$keyannul]);
	// La demande de traitement actuel est-elle dans l'arborescence, si non je l'ajoute
	if(!isset($_SESSION['arbotrt'][$key])) $_SESSION['arbotrt'][$key] = @$_GET["send_trt"];
	// Je récupère la demande de traitement actuel
	$demande_trt = $_SESSION['arbotrt'][$key];
}
__________________
Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.
lodan est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h36.


 
 
 
 
Partenaires

Hébergement Web