Un souci qui sera vite élucider, j'en suis sur....
En gros, la logique, j'ai un site géré par un Skelet, site ou il faut / ou pas mais dégragé être membre. Le skelet va lire la 1ère page (class: nexScreen) et va voir pour entre autre si(il faut être membre ou pas (sous classe UpdScteen, car il met à jour des infos relatives à l'écran proprement-dit) puis retour au Skelet.
Tout se passe dans cet environnement.
De skelet -> newScreen => Updsreen --> presque fin, ok, je veux rendre la main à l'appelant newScreen et KO !!!!!
Voici les displays realisés:
L'extrait de code, je mettrais la source entière en attachement
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 Au départ, le visiteur souhaite un info administrative >>>>>>>>>>>>>>>>updScreen EXECUTE<<<<<<<<<<<<<<<<<< SCREEN => admin TITLE => Vous souhaitez avoir une info administrative SUBTITLE => sur [Jecrapahute] ? FORM => admin MENU => index SUBMENU => contact KLIMSG => Vous souhaitez avoir une info administrative MUSTMBER => 1 getScreen >>>!!!! ISNOTMBER <il n'est pas membre, il ne peut la recevoir ici> hello row=>Array [B( [SCREEN] => isnotmember [TITLE] => Il faut être membre pour utiliser cette page [SUBTITLE] => sur [Jecrapahute] ? [FORM] => isnotmember [MENU] => index [SUBMENU] => contact [KLIMSG] => Pas encore membre, vous allez rater la belle saison ! [MUSTMBER] => 1 [BOTTOM] => ) -- hello tbl=>Pas encore membre, vous allez rater la belle saison ![/B] Jusqu'ici, c'est OK <<<< @@@@@notmber1@ Ici de ne l'est plus Array ( [SCREEN] => admin [TITLE] => Vous souhaitez avoir une info administrative [SUBTITLE] => sur [Jecrapahute] ? [FORM] => admin [MENU] => index [SUBMENU] => contact [KLIMSG] => Vous souhaitez avoir une info administrative [MUSTMBER] => 1 ) SKELETArray ( [SCREEN] => admin [TITLE] => Vous souhaitez avoir une info administrative [SUBTITLE] => sur [Jecrapahute] ? [FORM] => admin [MENU] => index [SUBMENU] => contact [KLIMSG] => Vous souhaitez avoir une info administrative [MUSTMBER] => 1 ) ==========> SKELT Back from Screen
Depuis hier, je cherche, je cherche, mets des displays.... etc
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119 case 1 : $this->row = $this->dbInst->dbfetchAssoc($this->gu) ; echo "getScreen >>>!!!!S" . $this->status; if (strcmp($this->status,NOTMBER) == 0) { $this->TBL_screen = $this->row[SCREEN ] ; $this->TBL_screen = $this->row[TITLE ] ; $this->TBL_screen = $this->row[SUBTITLE] ; $this->TBL_screen = $this->row[FORM ] ; $this->TBL_screen = $this->row[MENU ] ; $this->TBL_screen = $this->row[SUBMENU ] ; $this->TBL_screen = $this->row[MUSTMBER] ; $this->TBL_screen = $this->row[KLIMSG ] ;echo "hello row=>" ; print_r($this->row) ; echo " -- " ; echo "hello tbl=>" ; print_r($this->TBL_screen) ; LIGNE 148 => echo " <<<< @@@@@" ;return(NOTMBER) ; } else if ($this->screen != $this->row[SCREEN ] OR $this->title != $this->row[TITLE ] OR $this->subtitle != $this->row[SUBTITLE] OR $this->form != $this->row[FORM ] OR $this->submenu != $this->row[SUBMENU ] OR $this->mustmber != $this->row[MUSTMBER] OR $this->klimsg != $this->row[KLIMSG ] ) return(UPDATE) ; else return(NOTHING) ; break ; default : return(NOTHING) ; break ; } return(INSERT) ; } /** * updScreen() destructor * */ function __destruct( ) { if ($this->debug) user_error("Destruct UPDSCREEN" , E_USER_NOTICE) ; } } // ------------------------------------------------------------------------------------------------------------------------------- // // --------------------------------- MANAGMENT PAGE/SCREEN PARAMETRES --------------------------------- // // ------------------------------------------------------------------------------------------------------------------------------- // class Screen extends Skeleton { public $TBL_screen ; public static $scrnInst ; /** * Instanciation de la classe Screen * --------------------------------- */ function __construct($dbInst, $TBL_screen, $debug=false) { if (!self::$scrnInst) self::$scrnInst = $this; $this->dbInst = $dbInst ; $this->TBL_screen = $TBL_screen ; $this->debug = $debug ; // print_r($this->TBL_screen) ; if ($this->debug) { user_error("Construct SCREEN[OK]" , E_USER_NOTICE) ; print "================> Construct SCREEN[OK]" . "<br>\n" ; // print_r($this->TBL_screen) ; echo CRLF ; } return(self::$scrnInst) ; } /** * function __destruct() * */ function __destruct( ) { if ($this->debug) { user_error("Destruct SCREEN" , E_USER_NOTICE) ; print "================> SCREEN Ended" . "<br>\n" ; } } /** * function Execute() * */ function Execute() { if ($this->debug) { user_error("SCREEN[Execute]" , E_USER_NOTICE) ; print "================> SCREEN Executing" . "<br>\n" ; } // try { $this->updtScrnInst = new updateScreen($this->dbInst, $this->TBL_screen, $this->debug) ; switch( $this->updtScrnInst->execute() ): case UPDATE: echo "update" ; $this->UpdScreen() ; break ; case INSERT: echo "insert" ; $this->IsrtScreen() ; break; case NOTHING: echo "nothing" ; break; ligne 341 => KOKOKOKO case NOTMBER: echo "notmber1" ; echo"@ " ; print_r($this->TBL_screen) ; print_r($this->row) ; break; default: throw new EXCEPTION("Screen/updScreen => impossible case detected !") ; endswitch ;
Code : Sélectionner tout - Visualiser dans une fenêtre à part ICI, TJS OK
Je me dis qu'un élairage nouveau verra sans doute la solution !
Merci à vous tous......
Partager