Elxis CMS Forum

Ελληνικό Forum => Γενικά Θέματα για το Elxis CMS => Topic started by: ArXoS on June 15, 2011, 02:05:42

Title: Περίεργο error
Post by: ArXoS on June 15, 2011, 02:05:42
[14-Jun-2011 22:01:18] PHP Fatal error:  Call to undefined method mosEmpty::set() in /home/greekmas/public_html/components/com_content/content.php on line 463

Εντελώς ξαφνικά. Παίρνω 2-3 μόνο την ημέρα
Η παραπομπή στο content.php on line 463 είναι η εξής : (elxis 2006.4, no seo)

   $params->set( 'type', 'section' );

Από ότι ανακαλύπτω, αυτό το λάθος είναι όταν γίνεται όταν προσπαθούν να μπουν σε κάποιο link που μετά το &task=section δεν υπάρχει το &id ή το &Itemid . Σωστά ?

Αν είναι έτσι, είμαι βέβαιος οτι στο site δεν υπάρχει κάποιο τέτοιο link λάθος, άρα πρόκειται για κάποιον που έκανε copy το link και το έκανε κάπου paste λανθασμένα (σωστά;)
Αν είναι έτσι, πως μπορώ να βρω που υπάρχει αυτό το λάθος link ? Ψάχνω στα access logs εκείνη την ώρα του λάθους και δε βρίσκω τίποτε ..
Καμιά ιδέα;


Επίσης, πριν λίγες μέρες διέγραψα οριστικά κάποια άρθρα από το elxis. Μπορεί το λάθος να οφείλεται σε αυτό ?
Ευχαριστώ

Title: Re: Περίεργο error
Post by: datahell on June 15, 2011, 22:32:20
Όταν δεν έχει οριστεί το Itemid (αυτό φυσιολογικά δεν συμβαίνει ποτέ) δεν μπορούν να φορτωθούν οι παράμετροι του αντικειμένου μενού. Οπότε το $params ορίζεται ως Instance της κλάσης mosEmpty. Όμως αυτή η κλάση δεν έχει μέθοδο set.
Για να λύσεις το πρόβλημα κάνε το εξής:

Άνοιξε το αρχείο includes/Core/elxisxml.php
Πήγαινε στο τέλος του αρχείου.
Αντικατέστησε αυτό:
class mosEmpty {
   function def( $key, $value='' ) {
       return 1;
   }
   function get( $key, $default='' ) {
       return 1;
   }
}

με αυτό:
class mosEmpty {
   function def( $key, $value='' ) {
       return 1;
   }
   function get( $key, $default='' ) {
       return 1;
   }
   function set( $key, $value='' ) {
       return $value;
   }
}
Title: Re: Περίεργο error
Post by: ArXoS on June 16, 2011, 01:03:20
μ, φαίνεται να διορθώθηκε, τουλάχιστον δεν βγάζει λευκή σελίδα όποτε κάποιος απρόσεκτος παραλείψει το Itemid
Θα το παρακολουθήσω τώρα να δω για λάθη

Σε ευχαριστώ Γιάννη  ;D