-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.php
99 lines (73 loc) · 2.61 KB
/
index.php
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
<?php
require 'view/header.php';
require 'controller/rapport.php';
require 'model/bdd.php';
session_start();
//On en profite pour afficher les rapport si il y'en a !
if(isset($_SESSION['rapport'])){
$_SESSION['rapport']->getAllRapport();
}
$_SESSION['rapport'] = $error = new rapport();
$bdd = new connectDB("localhost","root","bdd_projet","");
/*
* Routeur du forum
* On regarde si dans l'url,le premier attribut après le nom de domaine est
* bien reconnu. Si c'est le cas on appelle le fichier demandé.
*
* Dev : Mehdi Ben Bahri
*/
$accueilurl = array('','accueil', 'profil', 'contact', 'mentions-legal','signIn','signUp','control_validCo','control_validIns','control_deco','control_validTop','control_addRep','control_suppMsg','control_suppUser');
$actual_url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$actual_url = explode("/", $actual_url);
$premierAtribut;
for ($i = 0; $i < count($actual_url); $i++) {
if ($_SERVER['HTTP_HOST'] === $actual_url[$i]) {
//A CHANGER AU CAS OU VOUS VOUDRIEZ LE METTRE AVEC UNE URL EN : "nomDeDomaine/forum/"
// $premierAtribut = $actual_url[$i+2];
$premierAtribut = $actual_url[$i+1];
if (empty($premierAtribut)){
$premierAtribut = "";
}
//ça sert à rien de continuer la boucle
$i = count($actual_url); //arrêt de la boucle forcé
}
}
require "view/navBar.php";
//Si premier Attribut est dans l'url :
if (in_array($premierAtribut, $accueilurl)) {
/*On regarde si il ne demande pas un controlleur */
if ($premierAtribut === ""){
//si il y a rien on ramène à la page d'accueil.
require "controller/control_listeForum.php";
require "view/accueil.php";
}
else if(strlen($premierAtribut)>7){
/*Vérification pour les controller*/
if (substr($premierAtribut,0,7) === "control"){
//c'est un controlleur
require "controller/". $premierAtribut .".php";
}
else{
require 'view/page404.php';
}
}
else{
if ($premierAtribut === "accueil"){
require "controller/control_listeForum.php";
}
require "view/".$premierAtribut.'.php';
}
/*Si il fait plus de 7 caractères,c'est peu être un controller.)*/
}else {
$topicId = (int) filter_var($premierAtribut, FILTER_SANITIZE_NUMBER_INT);
if (is_int($topicId)){
require "controller/control_listTopic.php";
}
else{
//si il y a rien on ramène à la page d'accueil.
require 'view/page404.php';
}
}
//On require dans tout les cas le footer...
require 'view/footer.php';
?>