Bonjour a tous
Je debute en programme et j'essaie de mettre en place un systeme de login basant sur les cookies ...
Je voudrais checker si les cookies (user or session) n'existe pas --> redirection vers le lien log.php
var $cookies;
angular.injector(['ngCookies']).invoke(function(_$cookies_) {
$cookies = _$cookies_;
});
if (!$cookies['user'] or !$cookies['session']){
$window.location = "log.php";
}
J'ai pas d'erreur mais ca n'execute ce qui est dans la boucle
Merci d'avance
Quelle boucle ? :'-)
De toute façon, or
ça existe pas en JavaScript, il faut utiliser ||
. Pis j'ai pas vraiment compris pourquoi tu utilisais l'injecteur d'Angular.
Utilise les contextes d'Angular, comme un contrôleur ou directement la méthode run de l'application.
C'est pas un peu chaud de débuter directement par Angular ? xD
Comme on dit, tu tues des mouches avec un fusil à pompe, le JS vanilla gère très bien les cookies :
document.cookie ="monSuperCookie=valeurCookie"
Et après tu fais tes vérifs avec tes if bizarres ^^
// Initialisation
var app = angular.module('web', ['ui.bootstrap', 'ngRoute', 'nCookies']);
// Controller indexCtrl for index.html
app.controller('indexCtrl', function($cookies){
// LOGIN
//Si pas les cookies
if (!$cookies['user'] || !$cookies['session']){
$window.location = "log.php";
} else {
$window.location = "param.html";
}
En faite j'essai de mettre ca en place mais j'ai l'impression qu'il ne voit pas les cookies puisque ca me renvoie vers log.php ensuiteca tourne en boucle toujours a se connecter
Salut, tu as l'air d'avoir une typo dans l'initialisation de ton module de cookies. Est ce que ca ne serait pas ngCookies
plutôt ?
C'est ngCookies (aute de frappe) .... y'aurait-il une autre facon d'ecrire SI PAS LES COOKIES ?
Si tu utilises Chrome, il te laissera pas setter des cookies sur le protocole file, à moins que tu lui passes un paramètre (ou dans la configuration). :-)