index.php in CakePHP ik krijg het niet

Ik weet niet waar er iets mis is, het ZIP-bestand is net aan mij gegeven en een groep programmeurs heeft de helft van het werk 'gedaan' en nu zou ik het moeten doen, het probleem is dat ik het niet doe. ik weet niet waar de fout zit, niets laat zien wanneer ik naar localhost/wookay/ga

Hier is de code:

<?php

if (!defined('DS')) {
    define('DS', DIRECTORY_SEPARATOR);
}



if (!defined('ROOT')) {
    define('ROOT', dirname(dirname(dirname(__FILE__))));
}


if (!defined('APP_DIR')) {
    define('APP_DIR', basename(dirname(dirname(__FILE__))));
}

if (!defined('CAKE_CORE_INCLUDE_PATH')) {
    define('CAKE_CORE_INCLUDE_PATH', ROOT);
}




if (!defined('WEBROOT_DIR')) {
    define('WEBROOT_DIR', basename(dirname(__FILE__)));
}

if (!defined('WWW_ROOT')) {
    define('WWW_ROOT', dirname(__FILE__) . DS);
}

if (!defined('CORE_PATH')) {
    if (function_exists('ini_set') && ini_set('include_path', CAKE_CORE_INCLUDE_PATH . PATH_SEPARATOR . ROOT . DS . APP_DIR . DS . PATH_SEPARATOR . ini_get('include_path'))) {
        define('APP_PATH', null);
        define('CORE_PATH', null);
    } else {
        define('APP_PATH', ROOT . DS . APP_DIR . DS);
        define('CORE_PATH', CAKE_CORE_INCLUDE_PATH . DS);
    }
}

if (!include(CORE_PATH . 'cake' . DS . 'bootstrap.php')) {
    trigger_error("CakePHP core could not be found.  Check the value of CAKE_CORE_INCLUDE_PATH in APP/webroot/index.php.  It should point to the directory containing your " . DS . "cake core directory and your " . DS . "vendors root directory.", E_USER_ERROR);
}



if (isset($_GET['url']) && $_GET['url'] === 'favicon.ico') {

    return;
} else {

    $Dispatcher = new Dispatcher();

            $Dispatcher->dispatch($url);
    }

if (Configure::read() > 0) {
    echo "<!-- " . round(getMicrotime() - $TIME_START, 4) . "s -->";
}

?>

Ik vergat het je te vertellen, ik ben een beetje noob op CakePHP, ik gebruik meestal smarty-sjablonen en creëer mijn eigen framework in het proces, en ik ben er zeker van dat het probleem ergens ligt in de $ Dispatcher = nieuwe Dispatcher ( ); Ik herhaalde voor en na, het liet niet zien wat er na ...

Ik veranderde de config/core.php Configureer: :( 'debug', 0); naar Cinfigure: :( 'debug', 1);

Toen het "0" was, werd er niets getoond, nu, wanneer ik het in "1" verander, wordt alles getoond, maar zou 0 de productiemodus moeten zijn?

1
Controleer de logs van uw webserver. De fouten zijn daar waarschijnlijk.
toegevoegd de auteur ceejayoz, de bron
@Gian, deel de stappen die u al hebt genomen om dit probleem op te lossen. Inspanning = hogere stemmen.
toegevoegd de auteur jamesTheProgrammer, de bron
define ('DS', DIRECTORY_SEPARATOR) ? "Mijn constanten zijn korter dan uw constanten" één-upmanship?
toegevoegd de auteur Marc B, de bron
Backticks zijn alleen voor inline-code . Voor codeblokken, zet elke regel op 4 spaties of selecteer het blok en druk op de knop {} .
toegevoegd de auteur meagar, de bron
@GianCresciniSantillan Schakel foutrapportage en CakePHP's foutopsporing in (stel dit in op 2 ) in config.php
toegevoegd de auteur Nasreddine, de bron
@MarcB Zo is het standaard in CakePHP ... ga eens kijken waarom ze het deden.
toegevoegd de auteur Nasreddine, de bron
@MarcB Waarom niet? ROOT_PATH. DS. 'localhost'. DS. 'app'. DS. 'www'. DS lijkt schoner dan ROOT_PATH. DIRECTORY_SEPERATOR. 'localhost'. DIRECTORY_SEPERATOR. 'app'. DIRECTORY_SEPERATOR. 'www'. DIRECTORY_SEPERATOR
toegevoegd de auteur Mike B, de bron
helaas heeft het geen foutenlogboek ... :(
toegevoegd de auteur Gian Crescini Santillan, de bron

3 antwoord

CakePHP stelt een eigen foutbehandelingsprogramma in dat voorkomt dat de logbestanden worden opgeslagen waar PHP meestal wel zal werken .

Ik raad u aan om naar app/config/core.php te gaan en de optie foutopsporing aan te vinken this voor een startpunt om te zien waar het probleem zit.

Het belangrijkste probleem met cakephp is dat je meestal vanuit een dode hoek begint.

1
toegevoegd

Turn on error reporting, add this line after the opening <?php

error_reporting(E_ALL);

of schakel de Debug-instelling van CakePHP in door de waarde ervan in te stellen op 2 . Doe dit in

config/core.php

verander dan deze regel naar

Configure::write('debug', 2);
1
toegevoegd
@GianCresciniSantillan Het wordt ten zeerste aanbevolen om te vertrekken op 2 terwijl u aan uw website werkt, maar wijzig deze in 0 wanneer u deze in productie zet.
toegevoegd de auteur Nasreddine, de bron
bedankt, ik ben echt een noob hier dank je wel, maar ik heb nog steeds een probleem, voordat ik dat deed, Conigure :: write ('debug', 2); het was 0, niets was te zien, nu veranderde ik het in 2 alles is te zien :(
toegevoegd de auteur Gian Crescini Santillan, de bron

voeg aan de bovenkant van het bestand deze regel toe

echo "test"; 

Geef commentaar op de test van het bestand en laad het vervolgens opnieuw. U zou de woordtest in de browser moeten zien. Voeg nu kleine stukjes van de code systatisch toe in het bestand. Betekenis: verplaats het bovenste opmerking-anker onder de

if (!defined('DS')) {
    define('DS', DIRECTORY_SEPARATOR);
}

code, opslaan en vernieuwen van de pagina - herhaal dit proces totdat de pagina faalt, dan weet je waar het probleem zit in de code.

0
toegevoegd