Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
874 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Gerer les erreurs 404 en php

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Gerer les erreurs 404 en php

n°384890
berceker
BERCEKER UNITED
Posté le 06-05-2003 à 17:36:02  profilanswer
 

Bonjours a tous.
J'aurais voulus savoir s'il étais possible en php de detecté une page demandé non existante (erreur 404).
Car je crois que mon hebergeur ne possede pas de pages personnalisées et je voudrais gérer cela via le PHP.  
Il me semblais qu'il etais possible via le header (il me semble.)
 
Merci a tous.


---------------
Si je suis près de toi c'est soit pour t'embrasser ou te croquer, alors à ce moment là rappelle toi de ce que tu m'as fait. du bien ou du mal?
mood
Publicité
Posté le 06-05-2003 à 17:36:02  profilanswer
 

n°384921
nico168
Posté le 06-05-2003 à 17:49:01  profilanswer
 

a mon avis c'est pas possible.
le server web detecte que l'adresse est invalide et retourne le code 404 au client (a moins qu'il soit configurer pour rediriger les 404 sur une autre page) et dans ce cas PHP n'intervient pas.

n°384946
Spir
Words are timeless
Posté le 06-05-2003 à 18:07:21  profilanswer
 

Citation :

a mon avis c'est pas possible.


Si!
http://allhtml.com/php/php466.php
 
Je me permet même si je suis mal placé pour le dire, il est bien ce smiley  :D :
[:ark]

n°384954
berceker
BERCEKER UNITED
Posté le 06-05-2003 à 18:19:35  profilanswer
 

Spir a écrit :

Citation :

a mon avis c'est pas possible.


Si!
http://allhtml.com/php/php466.php
 
Je me permet même si je suis mal placé pour le dire, il est bien ce smiley  :D :
[:ark]  


Merci Spire tes un boss :sol: !....


---------------
Si je suis près de toi c'est soit pour t'embrasser ou te croquer, alors à ce moment là rappelle toi de ce que tu m'as fait. du bien ou du mal?
n°384963
gatorette
Posté le 06-05-2003 à 18:39:41  profilanswer
 

Juste une petite remarque :
 

berceker a écrit :

Car je crois que mon hebergeur ne possede pas de pages personnalisées...


 

ALL HTML a écrit a écrit :

Tout d'abord, il faut intercepter l'erreur afin de rediriger le visiteur vers une page prévue pour lui indiquer qu'une erreur s'est produite et qu'il peut en informer le webmaster. Cette redirecton se fait en plaçant, à la racine du serveur, le fichier .htaccess contenant la ligne suivante :
 
ErrorDocument 404 /erreurs/err404.php3



 
La solution proposée par ALL HTML impose la modification de la configuration du serveur au travers de la définition de pages d'erreurs personnalisées. Ce qui n'est apparemment pas possible dans le cas de berceker.
 
A ma connaissance, il n'est pas possible de faire autrement. En effet, c'est le serveur qui traîte la demande du client. Si la page demandée n'existe pas (erreur 404), il renvoie une page d'erreur (définie sous Apache par la commande ErrorDocument). Ce n'est qu'après (si la page d'erreur est en PHP) que le PHP intervient. Il est donc trop tard pour faire quoi que ce soit !
 
Je pense tout de même à une autre solution (qui ne répond pas à tous les cas et qui est un peu lourde) : au lieu de faire des liens vers mapage.php, tu fais des liens vers check.php?page=mapage.php et dans le script check.php tu vérifie tout d'abord que mapage.php existe. Si elle existe, tu fais une redirection classique ; sinon tu affiche ta page personnalisée. Le problème est que tu n'auras pas les erreurs quand l'adresse est entrée manuellement, que ça oblige à changer toutes tes pages et que ça alourdit tout.
Je pense cependant que c'est la seule solution si tu ne peux pas configurer le serveur.


---------------
each day I don't die is cheating
n°384964
gm_superst​ar
Appelez-moi Super
Posté le 06-05-2003 à 18:44:05  profilanswer
 

Ce n'est pas parce que l'hébergeur n'a pas de page 404 personnalisée qu'on ne peux pas la définir avec un .htaccess.


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°385494
berceker
BERCEKER UNITED
Posté le 07-05-2003 à 10:08:13  profilanswer
 

c'est une bonne solution mais cela ne regle pas totalement le problème des erreurs d'appelle de fichier mais effectivement je peux gérer la presence du fichier via la fonction file_exist().

n°385605
berceker
BERCEKER UNITED
Posté le 07-05-2003 à 11:18:45  profilanswer
 

bon ben j'ai essayé mais aucun resultat en plus c'est sur mon serveur de ma machine w2k+apache mais aucun resultat.

n°386092
gatorette
Posté le 07-05-2003 à 15:34:19  profilanswer
 

gm_superstar a écrit :

Ce n'est pas parce que l'hébergeur n'a pas de page 404 personnalisée qu'on ne peux pas la définir avec un .htaccess.


 
C'est vrai que j'ai peut être traduit un peu vite qu'il ne pouvait pas du tout changer la configuration.
 

berceker a écrit :

c'est une bonne solution mais cela ne regle pas totalement le problème des erreurs d'appelle de fichier mais effectivement je peux gérer la presence du fichier via la fonction file_exist().


 

et aussi... a écrit :

bon ben j'ai essayé mais aucun resultat en plus c'est sur mon serveur de ma machine w2k+apache mais aucun resultat.



 
Je n'ai pas testé mais ça doit être possible. Par contre, d'après les commentaires sur le site PHP.net, la fonction file_exists à l'air assez particulière. Peut être que la fonction fopen est plus adaptée (ou une autre).
 
Cependant, au vu des défauts de la solution, je ne pense pas que cela vaille le coup de la mettre en place.


Message édité par gatorette le 07-05-2003 à 15:34:42

---------------
each day I don't die is cheating
n°387234
Spir
Words are timeless
Posté le 08-05-2003 à 16:23:37  profilanswer
 

berceker qu'elle est ton hébergeur? [:at war with emo]


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Gerer les erreurs 404 en php

 

Sujets relatifs
[ASP] Gerer les ruptures[VB6] Gérer les erreurs globalement
gérer les différents boutons de la sourisMessages d'erreurs sur mon forum
[PHP]Comment gérer des comptes utilisateurs sur un forum?style css, gerer le texte ?
Erreurs lors du lancement d'un programme GTKErreurs sur une classe CLed (celle de codeguru)
[MySQL] Comment gérer les clefs étrangères ? 
Plus de sujets relatifs à : Gerer les erreurs 404 en php


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR