Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    PHP require_once() gestione di un Fatal Error

    Salve a tutti!
    Ho creato un file ( CartHelper.php ) che viene incluso ( con require once ) da più file php nel mio server. Questo file, a sua volta deve includere un file ( DBhelper.php ) il quale descrive una classe da estendere la quale ha i permessi di amministratore per effettuare operazioni sul DataBase.
    Il mio file ( CartHelper.php ) però viene incluso da due differenti file, ad una diversa profondità rispetto alla directory principale. Quando il file viene incluso, ovviamente ottiene come posizione attuale quella del file che lo include. Se i file che includono questo hanno diversa profondità nelle directory come faccio a permettere la require_once() con parametro diverso in base a dome mi trovo?

    Ho provato anche a dare un percorso assoluto ma non funziona. ( web/htdocs/www.miosito.it/percorso-assoluto )

    Ho provato a gestire la cosa con un costrutto try cartch, ma il fatal error compare comunque e blocca l'esecuzione del codice.


    CODICE NON CORRETTO:
    try
    {
    $opened = require_once('../../global/server/DBhelper.php');
    if ( !$opened )
    {
    require_once('../global/server/DBhelper.php');
    }
    }
    catch ( Exception $e )
    {
    echo $e;
    }

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Il require_once() del file DBhelper.php fallo fare ai file che richiamano CartHelper.php, i require annidati possono diventare rognosi da gestire.
    In pratica avrai
    require_once('../global/server/DBhelper.php');
    require_once('../global/server/CartHelper.php');

    con i percorsi da mettere giusti ovviamente.

    I percorsi assoluti non funzionano perché di default sono vietati da require_once().

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.