Bonjour à tous,
je suis très embêtée, car le site web que j'ai codé fais partie de ma formation et si je ne résous pas mon problème, je n'aurai surement pas mon diplôme...
Voila en local tout fonctionne c'est parfait !
Or dès que je suis en ligne... plus d'accès à la partie admin... quand je tape /admin je tombe sur une page blanche et quand je tape /users/login et que je rentre les ID, ça refresh la page et rien d'autre...
Je ne sais plus quoi faire , ça fait deux jours non-stop que je cherche partout ma solution , je désespéré complètement...
voici mes routes :
Router::connect('/', array('controller' => 'pages', 'action' => 'home'));
Router::connect('/pages/:slug-:id',array('controller' =>'pages','action' =>'show'),array('pass' =>array('id','slug'), 'id'=>'[0-9]+','slug' => '[a-z0-9-]+'));
Router::connect('/admin', array('controller' =>'pages','action' =>'accpart','admin'=>true));
Router::connect('/pro', array('controller' =>'pages','action' =>'index','prefix' => 'pro','pro'=>true));
mon AppController
class AppController extends Controller {
public $helpers = array('Text','Form','Html','Session','Cache');
var $components = array(
'Auth',
'Session');
function beforeFilter() {
//debug($this->request);
if(isset($this->Auth))
{
$this->Auth->userModel = 'User';
$this->Auth->fields = array('username' => 'login', 'password' => 'password');
$this->Auth->loginAction = array('controller' => 'users', 'action' => 'login', 'admin' => false);
$this->Auth->loginRedirect = array('controller' => 'pages', 'action' => 'accpart', 'admin' => true);
$this->Auth->loginError = "Identifiant ou mot de passe incorrects.";
$this->Auth->authError = "Vous n'avez pas accès à cette partie du site";
$this->Auth->logoutRedirect = array('controller' =>'pages','action'=>'home', 'admin'=>false);
$this->Auth->autoRedirect = true;
if((empty($this->params'prefix']) || $this->params'prefix'] != 'admin') && $this->action != 'login')
{
$this->Auth->allow();
}
if(isset($this->request->params'prefix']) && $this->request->params'prefix'] == 'admin')
{
$this->layout = 'admin';
}
}
}
}
et enfin mon UsersController :
class UsersController extends AppController {
public $uses = array('Post');
var $name = "Users";
function beforeFilter() {
parent::beforeFilter();
$this->Auth->allow('*');
}
function login() {
if($this->request->is('post')){
if($this->Auth->login()){
return $this->redirect(array('controller'=>'pages','action'=>'accpart','admin'=>true));
}else{
$this->Session->setFlash("Votre login ou votre mot de passe ne correspond pas");
}
}
}
function admin_logout(){
$this->Auth->logout();
$this->Session->setFlash("Vous êtes maintenant déconnecté","notif");
$this->redirect('/');
}
}
?>
Merci d'avance de votre aide qui ne sera précieuse....
si vous voulez constater le problème : http://site.teaminformatique.com/admin
et vous pouvez essayer n'importe quel mdp il n'y aura jamais d'erreur : http://site.teaminformatique.com/users/login
Problème résolu !!!!
il fallait que je rajoute SetEnv PHP_VER 5_4 dans mon htacces !!!!
Uu cry more plz
Soyons un peu plus sérieux :
J'attends ta réponse (c'est un diplôme de quoi par curiosité =) )
++
Alors c'est un sous domaine qu'on a déployé pour moi pour que je puisse tester justement avant de le mettre sur le domaine directement.
tu devrais pouvoir avoir quelque chose quand tu va sur site.teaminformatique.com
(je fais un DUT SRC services des réseaux de communication et j'ai fais option programmation ^^ )
Soit tu ne me donnes pas le bon lien soit j'en sais rien : http://screencast.com/t/tId9pK2jJ
Il faudrait activer l'affichage des erreur pour que tu puisses voir le probleme sur ta page blanche
core.php
Configure::write('debug', 2);
(SRC qu'elle ville ? Me semblait qu'ils avaient changer le nom en mmi)
oui ça a changé de nom en MMI mais étant en deuxième année je reste SRC, je suis à Chambéry !
Je suis en train de suivre un tuto plus récent (jours 4 de la création d'un site web) je le finis et je vois si j'ai toujours le problème
Si tu n'a plus rien pour le moment c'est normal j'ai tout supprimé du FTP, je reviens vers toi dès que j'ai tout ré uploadé !
Merci de ton aide, j'espère pouvoir te solliciter à nouveau après avoir finis le tuto?
La communauté Grafikart te répondra si tu as des éventuels problème en prog. Après moi je suis totalement dispo que pour Vava ( : D )
Bonne journée.
Bon voilà j'ai refais le tuto et toujours pareil... et j'ai bien Configure::write('debug', 2); dans mon core.php...
j'ai tout remis en ligne http://site.teaminformatique.com/
et http://site.teaminformatique.com/admin toujours page blanche...
et http://site.teaminformatique.com/users/login toujours le refresh...
je sais plus quoi faire :(
voila mon nouvel AppController.php
class AppController extends Controller {
public $helpers = array('Text','Form','Html','Session');
var $components = array('Auth','Session');
function beforeFilter() {
//debug($this->request);
$this->Auth->loginAction = array('controller'=>'users','action'=>'login','admin'=>false);
if(!isset($this->request->params'prefix'])){
$this->Auth->allow();
}
if(isset($this->request->params'prefix']) && $this->request->params'prefix'] == 'admin')
{
$this->layout = 'admin';
}
}
/*public $components = array(
'DebugKit.Toolbar','Session'
);*/
}
Mon UsersController.php
<?php
class UsersController extends AppController {
public $uses = array('Post');
var $name = "Users";
function login() {
if($this->request->is('post')){
if($this->Auth->login()){
return $this->redirect($this->Auth->redirect());
}else{
$this->Session->setFlash("Votre login ou votre mot de passe ne correspond pas");
}
}
}
function admin_logout(){
$this->Auth->logout();
$this->Session->setFlash("Vous êtes maintenant déconnecté","notif");
$this->redirect('/');
}
}
?>
Mes routes :
Router::connect('/', array('controller' => 'pages', 'action' => 'home'));
Router::connect('/pages/:slug-:id',array('controller' =>'pages','action' =>'show'),array('pass' =>array('id','slug'), 'id'=>'[0-9]+','slug' => '[a-z0-9-]+'));
Router::connect('/admin', array('controller' =>'pages','action' =>'accpart','admin'=>true));
Router::connect('/pro', array('controller' =>'pages','action' =>'index','prefix' => 'pro','pro'=>true));
Il est déjà arrivé qu'il y est un problème d'espace au niveau des routes (un caractère spécial :p l'action d'un être spirituel :p) et que cela ne marche pas à cause de cela.
Fait un test en remplaçant ton fichier routes.php par celui là
J'avais pas pensé à la compatibilité PHP :p (sachant que tu es pas censé dev en local avec une version qui n'est pas la même sur ton server ;)
Bonne continuation.
Bah je ne savais pas qu'elle était la version de mon server :/ Merci coloo de ton aide et pour ton temps