osCommerce France : Accueil Forum Portail osCommerce France Réponses aux questions Foire aux contributions

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> Fatal error avec une classe non trouvée, Contribution CCGV n° 282
kostina
posté 6 Aug 2007, 18:27
Message #1


Ceinture blanche OSC
Icône de groupe

Groupe : Membres
Messages : 18
Inscrit : 6-August 07
Membre no 18616



Bonjour,

Depuis 3 jours, j'essaie d'installer de comprendre le pourquoi d'une erreur fatale dans du code récupéré dans un livre sur osCommerce et dans la contribution CCGV (chèque-cadeau et coupon de réduction) :

Fatal error: Class 'box' not found in C:\wamp\www\catalog\includes\boxes\gv_admin.php on line 34

1- Fichier "column_left.php" appelant le fichier en question (gv_admin.php) :
// ###### Added CCGV Contribution #########
require(DIR_WS_BOXES . 'gv_admin.php'); // CCGV Contribution
// ###### end CCGV Contribution #########

2-
Deux fichiers contennant pratiquement que des constantes remplies par la fonction define() et qui fonctionnent très bien partout ailleurs :
· Fichier "configure.php" (catalog/includes) :
define('DIR_WS_BOXES', DIR_WS_INCLUDES . 'boxes/');
· Fichier "configure.php" (catalog/admin/includes) :
define('DIR_WS_BOXES', DIR_WS_INCLUDES . 'boxes/');

3- Deux fichiers "gv_admin.php" rigoureusement identiques dans "catalog/includes/boxes" et dans "catalog/includes/boxes". Sans require non plus. La ligne 34 est indiquée tout en bas :
<?php
$heading = array();
$contents = array();

$heading[] = array('text' => BOX_HEADING_GV_ADMIN,
'link' => tep_href_link(FILENAME_COUPON_ADMIN, 'selected_box=gv_admin'));

if ($selected_box == 'gv_admin') {
$contents[] = array('text' => '<a href="' . tep_href_link(FILENAME_COUPON_ADMIN, '', 'NONSSL') . '" class="menuBoxContentLink">' . BOX_COUPON_ADMIN . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_GV_QUEUE, '', 'NONSSL') . '" class="menuBoxContentLink">' . BOX_GV_ADMIN_QUEUE . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_GV_MAIL, '', 'NONSSL') . '" class="menuBoxContentLink">' . BOX_GV_ADMIN_MAIL . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_GV_SENT, '', 'NONSSL') . '" class="menuBoxContentLink">' . BOX_GV_ADMIN_SENT . '</a>');
}
$box = new box; // ligne 34
echo $box->menuBox($heading, $contents);
?>
--------------
Pourriez-vous m'indiquer une piste ? Je désespère ! J'ai recommencé et vérifié plusieurs fois l'insertion de centaines de lignes de code dans des dizaines de fichiers. En vain...

Merci aux aoûtiens qui bossent, pas partis ou revenus...
Kostina
Go to the top of the page
 
kostina
posté 6 Aug 2007, 21:21
Message #2


Ceinture blanche OSC
Icône de groupe

Groupe : Membres
Messages : 18
Inscrit : 6-August 07
Membre no 18616



Pour résumer :
Comment se fait-il que ce script ne contiennent pas de définition de la fonction box alors qu'il n'y a pas de require ou include ? !
Ça ne peut pas fonctionner !
Or cette contribution a déjà quelques temps et aucun additif.
Je ne comprends rien.

Kostina
Go to the top of the page
 
kikidematnik
posté 6 Aug 2007, 21:42
Message #3


Ceinture jaune OSC
Icône de groupe

Groupe : Membres
Messages : 79
Inscrit : 4-March 07
Lieu : MARTINIQUE
Membre no 15697



Salut

regarde si dans ton instaal ce fichier est bien a mettre la

CODE
\catalog\includes\boxes\gv_admin.php


je pense plutot ici

CODE
\catalog\admin\includes\boxes\gv_admin.php


--------------------
Go to the top of the page
 
kostina
posté 6 Aug 2007, 22:39
Message #4


Ceinture blanche OSC
Icône de groupe

Groupe : Membres
Messages : 18
Inscrit : 6-August 07
Membre no 18616



Seulement dans admin... ?
Parce que, s'il n'est pas aussi dans includes, il me provoque alors une autre erreur !
En outre, où est passé la fonction box ?!

Je vais quand même essayer de l'enlever à nouveau d'includes, mais ce n'est pas ce que dit et le texte de la contribution et le bouquin de chez Eyrolles.
Te tiens au courant.

Merci.
Kostina
Go to the top of the page
 
kostina
posté 6 Aug 2007, 22:51
Message #5


Ceinture blanche OSC
Icône de groupe

Groupe : Membres
Messages : 18
Inscrit : 6-August 07
Membre no 18616



Voila :
L'erreur de classe absente disparait et ma colonne gauche s'affiche correctement.
Mais c'est une autre erreur qui s'affiche :

Warning: require(includes/boxes/gv_admin.php) [function.require]: failed to open stream: No such file or directory in C:\wamp\www\catalog\includes\column_left.php on line 29
Ce qui me bloque l'affichage du reste de la page également.

Et cette ligne 29, c'est :
require(DIR_WS_BOXES . 'gv_admin.php'); // CCGV Contribution

Au total, ou c'est la commande appelante (ici) qui débloque, ou c'est la commande appelée ( $box = new box; )

Nota : il est vrai que je ne suis pas sûre qu'il faille placer le fichier gv_admin.php dans incluses. Je l'avais peut-être fait par erreur la première : il y a beaucoup de manips à faire dans cette contribution.
Mais le fait est que si je ne la place pas dans Includes, j'ai l'erreur 29 ci-dessus !!!
Je tourne en rond et vais me coucher car ne peut plus rien comprendre ce soir.

Bonne nuit.
Kostina
Go to the top of the page
 
Gnidhal
posté 7 Aug 2007, 07:43
Message #6


5eme dan OSC
Icône de groupe

Groupe : Administrateur
Messages : 9130
Inscrit : 4-March 03
Lieu : Auray
Membre no 927



Reprends le fichier d'install !
tu t'es mélangé entre le rep catalog/ et le rep catalog/admin/
Warning: require(includes/boxes/gv_admin.php) [function.require]: failed to open stream: No such file or directory in C:\wamp\www\catalog\includes\column_left.php on line 29

cet appel ne devrait pas être dans catalog\includes mais dans catalog\admin\includes


--------------------
Tout d'abord : - Ni Hotline ni Service Après Vente, ces forums sont un lieu d'échange. BIEN POSER SA QUESTION (généralités)
Les "Informations Importantes" que vous devez ABSOLUMENT avoir lues :
Règlement, Bien poser sa question dans ces forums et Bien utiliser les Forums.
Les raccourcis pour gagner du temps : la FAQ, les PDF de la Doc (MS2-fr): PDF-V1 et PDF-V2, le moteur de Recherche sur les forums , la Liste des Contributions de Corbin.

----------------------------- Quelques sites de référence ---------------------------
PHP: Le site du Zéro et PHP Débutant avec la DOC en français -- HTML: Self HTML - WebProgrammation -- CSS: OpenWeb - AlsaCréations - CSS/Edge -- Autres ressources: - XajaX - highslide js
Les bons outils : EasyPHP - WAMP-5 - - Notepad++ - Firefox et son extension WebDeveloper
Le gène idéal c'est le gène original. Le génie des halles est un Génie des Alpages qui tente d'être à la page. (Merci f'murrr pour les cours de philosophie de chien)
Go to the top of the page
 
kostina
posté 7 Aug 2007, 08:09
Message #7


Ceinture blanche OSC
Icône de groupe

Groupe : Membres
Messages : 18
Inscrit : 6-August 07
Membre no 18616



Mille mercis Gnidhal !

Je commençais à désespérer. Ayant passé trop de temps dessus (je n'ose écrire le nombre d'heures...), je ne voyais plus rien et n'avais plus le recul nécessaire.
Il faut dire aussi que cette contribution entraine de très nombreux changements et augment le risque de faire une erreur.

Il reste néanmoins une petite question en suspens : lorsque le fichier column_left require le fichier gv_admin, ce dernier utilise une classe (boxe).
Comment savoir dans quel fichier (déjà 'inclus" -j'imagine-) elle est définie ?
Il n'existe pas une page sur le site osC où on aurait le plan de la structure de base du site pour mieux comprendre ?

En tous cas, encore merci Gnidhal.
La journée commence bien wink.gif

Kostina
Go to the top of the page
 

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



RSS Version bas débit Nous sommes le : 19th June 2013 - 10:13
Ce site est déclaré auprès de la commision Nationale
de l'Informatique et des Libertés (déclaration n°: 1043896)