Gros souci avec includes
Résolu
altechkgo
Messages postés
19
Date d'inscription
Statut
Membre
Dernière intervention
-
altechkgo Messages postés 19 Date d'inscription Statut Membre Dernière intervention -
altechkgo Messages postés 19 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je rencontre des difficultés avec mes fichiers includes
Après quelques recherches, mon souci est lié à l'utilisation de require dans mon code php
EDIT: Ajout des balises de code
en local tout est parfait,
mais chez l'hebergeur, c'est
Cette page ne fonctionne pas Impossible de traiter cette demande via je2menage.net à l'heure actuelle.
HTTP ERROR 500
Merci encore
je rencontre des difficultés avec mes fichiers includes
Après quelques recherches, mon souci est lié à l'utilisation de require dans mon code php
<?php require 'includ/includ.php'; ?>
EDIT: Ajout des balises de code
en local tout est parfait,
mais chez l'hebergeur, c'est
Cette page ne fonctionne pas Impossible de traiter cette demande via je2menage.net à l'heure actuelle.
HTTP ERROR 500
Merci encore
Configuration: Windows / Chrome 71.0.3578.80
9 réponses
Bonjour,
Que contient le fichier que tu cherches à inclure ?
As tu la même version de php en local et sur ton hébergeur ?
Es tu sûr du chemin vers le fichier ?
NB: Pour poster du code sur le forum, merci de le faire en utilisant LES BALISES DE CODE (et en y précisant le langage)
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Que contient le fichier que tu cherches à inclure ?
As tu la même version de php en local et sur ton hébergeur ?
Es tu sûr du chemin vers le fichier ?
NB: Pour poster du code sur le forum, merci de le faire en utilisant LES BALISES DE CODE (et en y précisant le langage)
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Je pense que le souci ne provient pas de la version de php en local et sur ton hébergeur , ni
du chemin vers le fichier ?
mais qu'il est lié au contenu du fichier que veux inclure.
EDIT : Ajout des balises de code ( encore .... !!!! )
Merci bien pour votre disponibilité
du chemin vers le fichier ?
mais qu'il est lié au contenu du fichier que veux inclure.
<?php require 'Classes/Db.php'; require 'Classes/panier.php'; require 'Classes/auth.php'; $DB = new Db(); $panier = new Panier($DB); // cacher les erreurs pour la production ini_set('error_reporting', 0); // afficher les érreurs lors du developpement //ini_set('error_reporting', E_ALL); ?>
EDIT : Ajout des balises de code ( encore .... !!!! )
Merci bien pour votre disponibilité
Déjà... le code permettant d'afficher les erreurs php se place AVANT le code php.... (donc en tout premier dans ton script ! )
Ensuite, le code que tu nous montres n'est pas, en soit, une cause de souci.
Sauf que là aussi tu y fais des require... et qu'on ne sait pas :
- Ce que contiennent ces fichiers.
- Le nom des fichiers sur le serveur et leur emplacement
NB: Attention.. si en local tu étais en windows.. et que maintenant tu es sur un linux.... le nommage des fichiers ( et l'utilisation des majuscules/minuscules) à sont importance.
Sous windows.. que le fichier se nomme : Db.php ou db.php lui importe peu... mais sous linux.. il s'agit de deux fichiers différents pour lui !
Ensuite, le code que tu nous montres n'est pas, en soit, une cause de souci.
Sauf que là aussi tu y fais des require... et qu'on ne sait pas :
- Ce que contiennent ces fichiers.
- Le nom des fichiers sur le serveur et leur emplacement
NB: Attention.. si en local tu étais en windows.. et que maintenant tu es sur un linux.... le nommage des fichiers ( et l'utilisation des majuscules/minuscules) à sont importance.
Sous windows.. que le fichier se nomme : Db.php ou db.php lui importe peu... mais sous linux.. il s'agit de deux fichiers différents pour lui !
ok, je travail sur Windows en local
chez l'hébergeur c'est linux.
Pour les requires
- un fichier nommé, Db.php'; pour me connecter sur la BD, placé dans un dossier nommé classes
- un autre fichier nommé, panier.php'; pour me connecter à mon panier, placé dans un dossier nommé classes
- un 3 ème fichier nommé, auth.php'; pour me connecter sur la BD en tant que utilisateur, placé dans un dossier nommé classes
UN AUTRE DOSSIER NOMME INCLUDES? CONTENANT 3fichiers différent
- header.php
-footer.php
-includes.php
voici comment se presente les fichiers et dossier dans mon poste de travail
chez l'hébergeur c'est linux.
Pour les requires
- un fichier nommé, Db.php'; pour me connecter sur la BD, placé dans un dossier nommé classes
- un autre fichier nommé, panier.php'; pour me connecter à mon panier, placé dans un dossier nommé classes
- un 3 ème fichier nommé, auth.php'; pour me connecter sur la BD en tant que utilisateur, placé dans un dossier nommé classes
UN AUTRE DOSSIER NOMME INCLUDES? CONTENANT 3fichiers différent
- header.php
-footer.php
-includes.php
voici comment se presente les fichiers et dossier dans mon poste de travail
Non-non
Dossier Classes avec C majuscule, et
Classes/Db.php
/panier.php
/auth.php
dossier includes/includes.php
/header.php
/footer.php
merci encore
Dossier Classes avec C majuscule, et
Classes/Db.php
/panier.php
/auth.php
dossier includes/includes.php
/header.php
/footer.php
merci encore
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
- As tu activé correctement l'affichage des erreurs PHP au début du script comme je te l'ai indiqué ?
- As tu essayé d'effacer (ou au moins de mettre en commentaire) les lignes de tes fichiers puis tu les remets une par une pour voir si le souci apparait.. jusqu'à trouver la/les lignes fautives...
- As tu essayé d'effacer (ou au moins de mettre en commentaire) les lignes de tes fichiers puis tu les remets une par une pour voir si le souci apparait.. jusqu'à trouver la/les lignes fautives...
OUI, et voici comment j'ai procedé
<?php
// cacher les erreurs pour la production
ini_set('error_reporting', 0);
// afficher les érreurs lors du developpement
//ini_set('error_reporting', E_ALL);
require 'Classes/db.php';
require 'Classes/panier.php';
require 'Classes/auth.php';
$DB = new db();
$panier = new Panier($DB);
?>
As tu essayé d'effacer (ou au moins de mettre en commentaire) les lignes de tes fichiers puis tu les remets une par une pour voir si le souci apparait.. jusqu'à trouver la/les lignes fautives...
Oui et après cela
https://je2menage.net/cgi-sys/suspendedpage.cgi (résultat= page blanche)
AU NIVEAU DOSSIER includes voici le résultat
https://je2menage.net/cgi-sys/suspendedpage.cgi (résultat = http erreur 500)
https://je2menage.net/cgi-sys/suspendedpage.cgi ( c'est parfait)
https://je2menage.net/cgi-sys/suspendedpage.cgi (c'est parfait)
AU NIVEAU DU DOSSIER Classes, voici les résultats
https://je2menage.net/cgi-sys/suspendedpage.cgi (résultat= page blanche)
https://je2menage.net/cgi-sys/suspendedpage.cgi (résultat= page blanche)
https://je2menage.net/cgi-sys/suspendedpage.cgi (résultat= page blanche)
<?php
// cacher les erreurs pour la production
ini_set('error_reporting', 0);
// afficher les érreurs lors du developpement
//ini_set('error_reporting', E_ALL);
require 'Classes/db.php';
require 'Classes/panier.php';
require 'Classes/auth.php';
$DB = new db();
$panier = new Panier($DB);
?>
As tu essayé d'effacer (ou au moins de mettre en commentaire) les lignes de tes fichiers puis tu les remets une par une pour voir si le souci apparait.. jusqu'à trouver la/les lignes fautives...
Oui et après cela
https://je2menage.net/cgi-sys/suspendedpage.cgi (résultat= page blanche)
AU NIVEAU DOSSIER includes voici le résultat
https://je2menage.net/cgi-sys/suspendedpage.cgi (résultat = http erreur 500)
https://je2menage.net/cgi-sys/suspendedpage.cgi ( c'est parfait)
https://je2menage.net/cgi-sys/suspendedpage.cgi (c'est parfait)
AU NIVEAU DU DOSSIER Classes, voici les résultats
https://je2menage.net/cgi-sys/suspendedpage.cgi (résultat= page blanche)
https://je2menage.net/cgi-sys/suspendedpage.cgi (résultat= page blanche)
https://je2menage.net/cgi-sys/suspendedpage.cgi (résultat= page blanche)
Déjà... comme je te l'ai déjà indique :
Pour poster du code sur le forum, merci de le faire en utilisant LES BALISES DE CODE (et en y précisant le langage)
Ensuite...
Toi tu dois mettre :
Et enfin.. dans ton fichier includes.php
bien entendu.. tu n'affiche pas directement ta page "include" dans ton navigateur....
Tu affiches ta page index https://je2menage.net/cgi-sys/suspendedpage.cgi (qui elle fait un include de ton fichier include... )
Pour poster du code sur le forum, merci de le faire en utilisant LES BALISES DE CODE (et en y précisant le langage)
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Ensuite...
// Désactiver le rapport d'erreurs error_reporting(0);
Toi tu dois mettre :
//mettre TOUT CA au début du fichier php pour activer l'affichage des erreurs PHP ! error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE);
Et enfin.. dans ton fichier includes.php
<?php error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); echo "Include des fichiers :"; if( !file_exists("Classes/db.php")){ echo " Fichier : Classes/db.php introuvable !"; } if( !file_exists("Classes/panier.php")){ echo " Fichier : Classes/panier.php introuvable !"; } if( !file_exists("Classes/auth.php")){ echo " Fichier : Classes/auth.php introuvable !"; } //Si aucun echo d'erreur n'apparait.. tu peux décommenter la première ligne puis réafficher ta page // require_once 'Classes/db.php'; //Si pas d'erreur.. tu peux ensuite décommenter la seconde ligne puis réafficher ta page : // require_once 'Classes/panier.php'; // si toujours pas d'erreur.. tu peux décommenter cette troisème ligne puis réafficher ta page // require_once 'Classes/auth.php'; //Si toujours pas d'erreur... puis réafficher ta page //$DB = new db(); //et si toujours pas d'erreur... puis réafficher ta page // $panier = new Panier($DB); ?>
bien entendu.. tu n'affiche pas directement ta page "include" dans ton navigateur....
Tu affiches ta page index https://je2menage.net/cgi-sys/suspendedpage.cgi (qui elle fait un include de ton fichier include... )
Merci encore,
c'est bien noté pour le code et les balises.
après le texte avec votre orientation j'obient ce message d'erreur
Notice: Undefined variable: panier in /home/lb2vu0go/public_html/eshop/includes/header.php on line 43
Fatal error: Call to a member function count() on null in /home/lb2vu0go/public_html/eshop/includes/header.php on line 43
c'est bien noté pour le code et les balises.
après le texte avec votre orientation j'obient ce message d'erreur
Notice: Undefined variable: panier in /home/lb2vu0go/public_html/eshop/includes/header.php on line 43
Fatal error: Call to a member function count() on null in /home/lb2vu0go/public_html/eshop/includes/header.php on line 43