Normalement fin controllers mais doucement quand meme faut pas trop rever

main
Lilian BRETON 3 years ago
parent 8a76b7b64e
commit 8b5d7ccad0

@ -0,0 +1,33 @@
<?php
class Autoload{
private static ?Autoload $_instance = null;
public static function charger(){
if(self::$_instance != null){
throw new RuntimeException(sprintf("%s already start", __CLASS__));
}
self::$_instance = new self();
if(!spl_autoload_register(array(self::$_instance, '_autoload'))){
throw new RuntimeException('Could not stop autoload');
}
self::$_instance = null;
}
private static function _autoload($class){
global $rep;
$filename = $class.'.php';
$dir = array('modeles/', 'config', 'controllers');
foreach ($dir as $d){
$file=$rep.$d.$filename;
if($file_exists($file)){
include $file;
}
}
}
}
?>

@ -8,26 +8,16 @@ class Validation{
}
}
static function val_form(string &$username, string &$mdp, array &$dVueErreur){
static function val_form(string &$chaine, array &$dVueErreur){
if (!isset($username)||$username==""){
$dVueErreuR[] = "pas de username";
$username="";
if (!isset($chaine)||$chaine==""){
$dVueErreuR[] = "pas de chaine de charactère";
$chaine="";
}
if (!$username != filter_var($username, FILTER_SANITIZE_STRING)){
if (!$chaine != filter_var($chaine, FILTER_SANITIZE_STRING)){
$dVueErreur[] = "tentative d'injection de code (attaque sécurité)";
$username="";
}
if (!isset($mdp)||$mdp==""){
$dVueErreuR[] = "pas de mot de passe";
$mdp="";
}
if (!$mdp != filter_var($mdp, FILTER_SANITIZE_STRING)){
$dVueErreur[] = "tentative d'injection de code (attaque sécurité)";
$mdp="";
$chaine="";
}
}
}

@ -0,0 +1,17 @@
<?php
$rep = __DIR__ . '/../';
//$location = "Location : http://londres.uca.local/" Finir le chemin du public_html
$base=""; //nom bdd
$login="";
$password="";
$dsn=""; // chemin vers bd (mysql:host=londres.uca.local;dbname=dblibreton => pour l'iut)
$vues['erreur'] = 'Vues/erreur.php'
// A faire pour toutes les vues
?>

@ -2,7 +2,29 @@
class frontController {
function __construct() {
global $rep, $vues;
session_start();
$dVueErreur = array();
$listActionUser=array('delete', 'update', 'ajouterListeU', 'supprimerListeU', 'modifierListeU', 'ajouterTacheU', 'supprimerTacheU', 'modifierTacheU'); // actions à rajouter
try{
$user = new mdlUser();
if (isset($_REQUEST['action'])){
$action = $_REQUEST['action'];
Validation::val_form($action, $dVueErreur);
}
if(in_array($action, $listActionUser)) {
new userController();
}
else {
new visitorController();
}
}
catch (Exception $e){
$dVueErreur[] = "Erreur FrontController";
require $rep.$vues['erreur'];
}
}
}
?>

@ -5,7 +5,7 @@ class userController {
{
global $rep,$vues;
$mdlUsr = new MdlUser();
$user = new User();
$user = $mdlUsr->getUserForConnection($username, $mdp);
session_start();
$this->ValidationFormulaire($dVueEreur);
@ -26,27 +26,27 @@ class userController {
$this->Update();
break;
case "ajouterListe":
case "ajouterListeU":
$this->AddList();
break;
case "supprimerListe":
case "supprimerListeU":
$this->DelList();
break;
case "modifierListe":
case "modifierListeU":
$this->UpdateList();
break;
case "ajouterTache":
case "ajouterTacheU":
$this->AddTask();
break;
case "supprimerTache":
case "supprimerTacheU":
$this->DelTask();
break;
case "modifierTache":
case "modifierTacheU":
$this->UpdateTask();
break;

@ -27,6 +27,11 @@ class visitorController {
$this->ValidationFormulaireLogin($dVueEreur);
$this->Inscription($login, $mdp);
break;
default:
$dVueEreur[] = "Erreur d'appel php";
require ($rep.$vues['vuephp1']); //Appel de vue à changer
break;
}
}
catch (Exception $e){

Loading…
Cancel
Save