2010-09-24 9 views
12

मैं प्रेस्टैशॉप के लिए PHP में एक मॉड्यूल विकसित कर रहा हूं और मुझे कोड डीबग करने का प्रयास करने में कठिन समय हो रहा है। जब भी कुछ खत्म हो जाता है तो यह त्रुटियों को प्रदर्शित नहीं करता है, केवल एक खाली पृष्ठ - या तो फ्रंट एंड पर जहां मॉड्यूल लगाया जाता है, या बैक एंड मॉड्यूल पेज पर।प्रेस्टैशॉप कोई त्रुटि/खाली पृष्ठ

मैं किसी अन्य वर्ग, या किसी अन्य फ़ंक्शन में लिखने की कोशिश कर रहा हूं लेकिन इसे बिल्कुल पसंद नहीं है।

यह एक स्थानीय देव सर्वर पर है, पीएचपी त्रुटियों आदि पर हैं

किसी ने मुझसे डिबग सामान के बजाय कोड बाहर टिप्पणी करने के लिए किसी अन्य तरीके से बता सकते हैं? या त्रुटि कोड प्राप्त करने का कोई तरीका?

अग्रिम में आपकी सहायता के लिए धन्यवाद।

उत्तर

24

खोलने का प्रयास करें config/config.inc.php और फिर परिवर्तित करें:

@ini_set('display_errors', 'off')

@ini_set('display_errors', 'on') करने के लिए।


से पी एस 1.5+, आप config/defines.inc.php और परिवर्तन को खोलने के लिए की जरूरत है:

define('_PS_MODE_DEV_', false);

अंतिम समाधान के लिए बाहर की जांच इस

को

define('_PS_MODE_DEV_', true);

+0

बहुत बढ़िया! बहुत बहुत धन्यवाद –

+3

पीएस 1.5.x में _PS_MODE_DEV_ को config/defines.inc.php में सही करने के लिए बदलें –

0

!

सबसे पहले, आपको अपनी वेबसाइट पर त्रुटियों की रिपोर्टिंग सक्षम करने की आवश्यकता है। करने के लिए 'पर', फ़ाइल को पुनः अपलोड करने और अपने पेज को ताज़ा 'बंद'

@ini_set(‘display_errors’, ‘off’);  

2) बदलें:

1) फ़ाइल config \ config.inc.php खोलें और निम्न पंक्ति पाते हैं।

यदि यह मदद नहीं करता है, तो अगले चरण पर जाएं।

3) इस कोड को अपनी index.php फ़ाइल के शीर्ष पर PrestaShop स्थापना की रूट में जोड़ें और इसे अपने सर्वर पर पुनः अपलोड करें। फिर अपनी वेबसाइट और व्यवस्थापक पैनल तक पहुंचने का प्रयास करें।

<?php error_reporting(0); 
     $old_error_handler = set_error_handler("userErrorHandler"); 

     function userErrorHandler ($errno, $errmsg, $filename, $linenum, $vars) 
    { 
    $time=date("d M Y H:i:s"); 
    // Get the error type from the error number 
    $errortype = array (1 => "Error", 
         2 => "Warning", 
         4 => "Parsing Error", 
        8 => "Notice", 
        16 => "Core Error", 
        32 => "Core Warning", 
        64 => "Compile Error", 
        128 => "Compile Warning", 
        256 => "User Error", 
        512 => "User Warning", 
        1024 => "User Notice"); 
    $errlevel=$errortype[$errno]; 

    //Write error to log file (CSV format) 
    $errfile=fopen("errors.csv","a"); 
    fputs($errfile,"\"$time\",\"$filename: 
    $linenum\",\"($errlevel) $errmsg\"\r\n"); 
    fclose($errfile); 

    if($errno!=2 && $errno!=8) { 
    //Terminate script if fatal error 
    die("A fatal error has occurred. Script execution has been aborted"); 
    } 
    } 
?> 

इस मैनिपुलेशन के बाद आपको उस फ़ोल्डर में error.csv नामक फ़ाइल मिलेगी जहां आपकी index.php फ़ाइल स्थित है। किसी भी टेक्स्ट एडिटर का उपयोग करके फ़ाइल error.csv को डाउनलोड और खोलें, आपको वहां त्रुटि लॉग मिलेगा।

0

अपने बैकऑफिस पेज पर जाएं।

उन्नत पैरामीटर -> प्रदर्शन -> स्वच्छ कैश (इरेज़र चिह्न)

1

मैं

योग्यता PHP5-mcrypt sudo योग्यता स्थापित PHP5-mcrypt sudo सेवा apache2 पुनः आरंभ

स्थापित करना था

एन्क्रिप्शन स्थापित नहीं किया गया था

संबंधित मुद्दे