Subversion Repositories Applications.papyrus

Rev

Rev 323 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 323 Rev 377
Line 19... Line 19...
19
// |                                                                                                      |
19
// |                                                                                                      |
20
// | You should have received a copy of the GNU General Public License                                    |
20
// | You should have received a copy of the GNU General Public License                                    |
21
// | along with Foobar; if not, write to the Free Software                                                |
21
// | along with Foobar; if not, write to the Free Software                                                |
22
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
22
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
23
// +------------------------------------------------------------------------------------------------------+
23
// +------------------------------------------------------------------------------------------------------+
24
// CVS : $Id: erreur_404.php,v 1.1 2005-03-30 08:58:32 jpm Exp $
24
// CVS : $Id: erreur_404.php,v 1.2 2005-05-26 08:51:55 jpm Exp $
25
/**
25
/**
26
* Redirection de page
26
* Redirection de page
27
*
27
*
28
* Permet d'utiliser la redirection de page.
28
* Permet d'utiliser la redirection de page.
29
*
29
*
Line 31... Line 31...
31
//Auteur original :
31
//Auteur original :
32
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
32
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
33
//Autres auteurs :
33
//Autres auteurs :
34
*@author        Aucun
34
*@author        Aucun
35
*@copyright     Tela-Botanica 2000-2005
35
*@copyright     Tela-Botanica 2000-2005
36
*@version       $Revision: 1.1 $ $Date: 2005-03-30 08:58:32 $
36
*@version       $Revision: 1.2 $ $Date: 2005-05-26 08:51:55 $
37
// +------------------------------------------------------------------------------------------------------+
37
// +------------------------------------------------------------------------------------------------------+
38
*/
38
*/
Line 39... Line 39...
39
 
39
 
40
// +------------------------------------------------------------------------------------------------------+
40
// +------------------------------------------------------------------------------------------------------+
Line 81... Line 81...
81
// Tentative de Connexion à la base de données et de récupération de l'URI demandée.
81
// Tentative de Connexion à la base de données et de récupération de l'URI demandée.
82
$bdd = DB::connect(PAP_DSN);
82
$bdd = DB::connect(PAP_DSN);
83
if (DB::isError($bdd) || empty($_SERVER['REQUEST_URI'])) {
83
if (DB::isError($bdd) || empty($_SERVER['REQUEST_URI'])) {
84
    gererErreur404();
84
    gererErreur404();
85
}
85
}
86
preg_match('/^\/(.*)$/', $_SERVER['REQUEST_URI'], $tab_raccourci);
86
preg_match('/^\/(.*?)(?:\?(.*)|)$/', $_SERVER['REQUEST_URI'], $tab_raccourci);
87
echo $raccourci;
-
 
88
$raccourci = $tab_raccourci[1];
87
$raccourci = $tab_raccourci[1];
-
 
88
$parametres = '';
-
 
89
if (isset($tab_raccourci[2])) {
-
 
90
    $parametres = $tab_raccourci[2];
-
 
91
}
89
// Nous cherchons à savoir si le raccourci est entièrement numérique ou pas.
92
// Nous cherchons à savoir si le raccourci est entièrement numérique ou pas.
90
if (preg_match('/^[0-9]+$/', $raccourci)) {
93
if (preg_match('/^[0-9]+$/', $raccourci)) {
91
    // Nous vérifions si nous utilisons les codes numériques ou alphanumérique dans les url
94
    // Nous vérifions si nous utilisons les codes numériques ou alphanumérique dans les url
92
    if (GEN_URL_ID_TYPE_MENU != 'int') {
95
    if (GEN_URL_ID_TYPE_MENU != 'int') {
93
        $code = GEN_retournerMenuCodeAlpha($bdd, $raccourci);
96
        $code = GEN_retournerMenuCodeAlpha($bdd, $raccourci);
Line 102... Line 105...
102
        $code = GEN_retournerMenuCodeNum($bdd, $raccourci);
105
        $code = GEN_retournerMenuCodeNum($bdd, $raccourci);
103
    }
106
    }
104
}
107
}
105
if ($code != '') {
108
if ($code != '') {
106
    // Nous effectuons la redirection:
109
    // Nous effectuons la redirection:
-
 
110
    if (!empty($parametres)) {
-
 
111
        header ('Location: '.sprintf(PAP_URL_REDIRECTION, $code).'&'.$parametres);
-
 
112
    } else {
107
    header ('Location: '.sprintf(PAP_URL_REDIRECTION, $code));
113
        header ('Location: '.sprintf(PAP_URL_REDIRECTION, $code));
-
 
114
    }
-
 
115
    header('Status: 303');
108
    exit(0);
116
    exit(0);
109
} else {
117
} else {
110
    gererErreur404();
118
    gererErreur404();
111
}
119
}
Line 126... Line 134...
126
}
134
}
Line 127... Line 135...
127
 
135
 
128
/* +--Fin du code ----------------------------------------------------------------------------------------+
136
/* +--Fin du code ----------------------------------------------------------------------------------------+
129
*
137
*
-
 
138
* $Log: not supported by cvs2svn $
-
 
139
* Revision 1.1  2005/03/30 08:58:32  jpm
-
 
140
* Ajout du fichier gérant les erreurs 404 et les redirections.
130
* $Log: not supported by cvs2svn $
141
*
131
*
142
*
132
* +-- Fin du code ----------------------------------------------------------------------------------------+
143
* +-- Fin du code ----------------------------------------------------------------------------------------+
133
*/
144
*/
134
?>
145
?>