IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

afficher une page "le site est en maintenance"


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Datascientist
    Inscrit en
    Août 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Datascientist
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 248
    Points : 110
    Points
    110
    Par défaut afficher une page "le site est en maintenance"
    Bonjour tout le monde,

    en faite j'ai besoin de votre aide, je suis nouveau en cakePhp, et je dois afficher une page "le site est en maintenance" sur un site, j'ai essayé ce code dans la page dbo_mysql.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function lastError() {
    		if (mysql_errno($this->connection)) {
     
    			$this->redirect("https://www.google.com");
    		}
    		return null;
    	}
    et j'ai cette erreur :

    Fatal error: Call to undefined method DboMysql::redirect()
    comment je peux faire ceci SVP ?

    Mercii

  2. #2
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    Tu ne connais vraisemblablement pas le modèle MVC, tu tentes de faire une redirection lors d'un accès à la bdd.

    Tu dois faire la redirection dans le beforeFilter de ton controlleur (mais je te recommanderai tout d'abord dans apprendre un peu plus sur le modèle MVC et sur le framework en lui-même).
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  3. #3
    Membre régulier
    Homme Profil pro
    Datascientist
    Inscrit en
    Août 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Datascientist
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 248
    Points : 110
    Points
    110
    Par défaut
    merci pour votre réponse, oui en faite je suis débutant en cakePhp, est ce que vous avez des idées pour afficher ce genre de page (page d'erreur "notre site est en maintenance") si on a des erreurs au niveau de la base de données ?

    Merci à vous

  4. #4
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    Oui c'est possible mais c'est complètement illogique, car un site en maintenance n'est pas la même chose qu'un site ou une erreur imprévue se produit (les codes HTTp sont différents, 500 pour l'erreur interne, 503 pour la maintenance).
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  5. #5
    Membre régulier
    Homme Profil pro
    Datascientist
    Inscrit en
    Août 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Datascientist
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 248
    Points : 110
    Points
    110
    Par défaut
    en faite en est entrain de modifier la base de données en fur et à mesure, alors que quelque page de notre site ne marche pas à cause de ceci, il m'ont demandé d'afficher une page "le site et en maintenance s'il ya une erreurs sql, j'ai détecté ce code dans dbo_mysql.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function lastError() {
    		if (mysql_errno($this->connection)) {
    			return mysql_errno($this->connection).': '.mysql_error($this->connection);
     
    		}
    		return null;
    	}
    qui affiche les erreurs sql, et je veux le remplacer par une phrase ou une redirection vers une page qui affiche "notre site est en maintenance". et je n'arrive pas à le faire.

    voilà en gros mon problème.

    merci à vous

  6. #6
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    Premièrement, il ne faut JAMAIS modifier quoi que ce soit dans le coeur du framework. Tout se situe dans ton code à toi (src pour CakePhp 3, app Pour CakePhP 2).

    Ton cas doit-être géré avec une exception personnalisée : http://book.cakephp.org/3.0/fr/development/errors.html

    Il va te falloir faire un héritage de la classe de Cake qui permet d'exécuter les requêtes dans la bdd (je sais pas laquelle c'est mais elle peut se trouver facilement).

    Là, sache qu'on va très loin dans le framework, il faut une connaissance plutôt élevée du framework et de la POO de manière plus générale. Ca fait pas partie des éléments "de base", c'est ce que je veux te dire.
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  7. #7
    Membre régulier
    Homme Profil pro
    Datascientist
    Inscrit en
    Août 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Datascientist
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 248
    Points : 110
    Points
    110
    Par défaut
    grand merci Spartacusply,
    je vais me documenter et essayer ceci, si ça marche je vais mettre le post en résolu.

    Merci à vous encore

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par kamclasse Voir le message
    Bonjour tout le monde,

    en faite j'ai besoin de votre aide, je suis nouveau en cakePhp, et je dois afficher une page "le site est en maintenance" sur un site, j'ai essayé ce code dans la page dbo_mysql.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function lastError() {
    		if (mysql_errno($this->connection)) {
     
    			$this->redirect("https://www.google.com");
    		}
    		return null;
    	}
    et j'ai cette erreur :



    comment je peux faire ceci SVP ?

    Mercii
    La méthode 'redirect' dépend du contrôleur et nom du modèle, il est normal que ton code plante car 'redirect' n'existe pas. Tu dois tester la connexion à la base de données dans ton AppModel ou AppController/beforeFilter pour afficher ton message d'erreur.

Discussions similaires

  1. WCF détourne un site IIS et affiche une page d'information.
    Par morel16 dans le forum Windows Communication Foundation
    Réponses: 1
    Dernier message: 25/08/2011, 14h10
  2. Réponses: 1
    Dernier message: 26/02/2010, 15h30
  3. Réponses: 3
    Dernier message: 10/12/2008, 12h38
  4. Réponses: 9
    Dernier message: 24/01/2008, 18h42
  5. Mon site affiche une page blanche avec Firefox : Pourquoi ? Que faire ?
    Par bnoir dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 25/10/2006, 16h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo