Tutoriel Développer un site de A à Z Jour 3 : Problémes Source

Par Ocktop, il y a 13 ans


Hi,

J'ai téléchargé les fichiers source de Développer un site : Jour 3, les models et fais quelques transformations :

Mais quand je reload la page http://localhost/testmoi/pages/1 ; elle me met deux erreurs :

# Time Memory Function Location
1 0.0006 677312 {main}( ) ..\index.php:0
2 0.0028 775104 Dispatcher->__construct( ) ..\index.php:9
3 0.0033 788936 Dispatcher->error( ) ..\Dispatcher.php:19
4 0.0033 789560 Controller->e404( ) ..\Dispatcher.php:30
5 0.0033 789976 Controller->render( ) ..\Controller.php:73
6 0.0079 799616 require( 'C:\wamp\www\testmoi\view\layout\default.php' ) ..\Controller.php:36

&

# Time Memory Function Location
1 0.0006 677312 {main}( ) ..\index.php:0
2 0.0028 775104 Dispatcher->__construct( ) ..\index.php:9
3 0.0033 788936 Dispatcher->error( ) ..\Dispatcher.php:19
4 0.0033 789560 Controller->e404( ) ..\Dispatcher.php:30

Logiciels :
Wamp 2.2
Notepad++
WorkBench 5.2

Voici le default.php des fichiers source pour ceux qu'ils veulent aidé et qui ne sont pas Premium :

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
    <title><?php echo isset($title_for_layout)?$title_for_layout:'Mon site'; ?></title> 
    <link rel="stylesheet" href="http://twitter.github.com/bootstrap/1.3.0/bootstrap.min.css">
    </head> 
    <body>       

        <div class="topbar"> 
          <div class="topbar-inner"> 
            <div class="container"> 
              <h3><a href="#">Mon site</a></h3> 
              <ul class="nav"> 
                <?php foreach($pages as $p): ?>
                    <li><a href="<?php echo BASE_URL.'/pages/view/'.$p->id; ?>" title="<?php echo $p->name; ?>"><?php echo $p->name; ?></a></li> 
                <?php endforeach; ?>
              </ul>
            </div> 
          </div> 
        </div> 

        <div class="container" style="padding-top:60px;">
            <?php echo $content_for_layout; ?>
        </div>

    </body> 
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
</html>

Merci :)

6 réponses

erfou, il y a 13 ans

salut,
si ca te dit undefined variable, ca ne veut pas dire que l'erreur est crée ici, mais qu'elle apparait ici. elle est crée dans ton PagesController, la ou tu definis la variable $d'pages']
Peut etre que ta bdd est vide et que la requete te renvoie un objet null.

Eric

Ocktop, il y a 13 ans

Oui, apparemment ma bdd ne répond pas, car dans la Conf.php j’enlève le database et les erreurs sont toujours là.
J’approfondis et je post :)

Ocktop, il y a 13 ans

Je vois que on force le passage :

public function __construct(){
        // Jme connecte à la base
        $conf = Conf::$databases$this->conf];
        if(isset(Model::$connections$this->conf])){
            $this->db = Model::$connections$this->conf];
            return true; 
        }
        try{
            $pdo = new PDO(
                'mysql:host='.$conf'host'].';dbname='.$conf'database'].';',
                $conf'login'],
                $conf'password'],
                array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8')
            );
            $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);

ce serai ça ?

erfou, il y a 13 ans

Je vois que on force le passage :

je comprends pas ce que tu veux dire.

arcoss 3x, il y a 10 ans

remplace l'url http://twitter.github.com/bootstrap/1.3.0/bootstrap.min.css par http://bootstrapdocs.com/v2.3.2/docs/assets/css/bootstrap.css :

<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title><?php echo isset($title_for_layout)?$title_for_layout:'Mon site'; ?></title> <link rel="stylesheet" href="http://bootstrapdocs.com/v2.3.2/docs/assets/css/bootstrap.css"> </head> <body> <div class="topbar"> <div class="topbar-inner"> <div class="container"> <h3><a href="#">Mon site</a></h3> </div> </div> </div> <div class="container" style="padding-top:60px;"> <?php echo $content_for_layout; ?> </div> </body> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> </html>
Carouge10, il y a 10 ans

Euh, vous avez vu la date du post ?
Il a je pense résolu son problème depuis... (^_^)