IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Zend_Db PHP Discussion :

Connexion à la base de données


Sujet :

Zend_Db PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 488
    Par défaut Connexion à la base de données
    Bonjour,

    J'avais un code sur ma page d'accueil, qui fonctionnait a merveille.
    Je sors cette brique de code pour la mettre dans un fichier a part et plus rien ne fonctionne.
    Pour la connexion a la base je lui rajoute même un require pour mon bootstrap et rien n'y fait.

    Voila mon include:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?= $this->partial('./includes/recruteAgence.phtml'); ?>
    Voilà la page en question:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    <?php
    try {
        require './application/bootstrap.php';
    } catch (Exception $exception) {
        echo '<html><body><center>'
           . 'An exception occured while bootstrapping the application.';
        mail('test@test.fr','An exception occured while bootstrapping the application',nl2br(htmlentities(print_r($exception,true))));
        if (defined('APPLICATION_ENVIRONMENT')
            && APPLICATION_ENVIRONMENT != 'production'
        ) {
            echo '<br /><br />' . $exception->getMessage() . '<br />'
               . '<div align="left">Stack Trace:'
               . '<pre>' . $exception->getTraceAsString() . '</pre></div>';
        }
        echo '</center></body></html>';
        exit(1);
    }
     
     ?>
     <div class="title_block side-box last" style="padding-top: 0;"><h2 class="header-blue" style="text-align: center;color: #888">Les agences qui recrutent</h2></div>
                                <?php
                                $col[] = array_slice($this->postes,0,7);
                                $col[] = array_slice($this->postes,7,7);
                                print_r ($col);
     
                                $new_array = array();
                                    foreach ($col as $co) {
                                      print '<div style="width:45%;float: left; margin: 0 1% 0 1%;display: inline"><ul>';
                                      foreach ($co as $poste) {
                                        $key = $poste['cli_id']; /*** 30/08/2010 1 annonce par client **/
                                        if(!isset($new_array[$key] )){  /*** 30/08/2010 1 annonce par client **/
                                            $new_array[$key] = $poste['cli_id'];  /*** 30/08/2010 1 annonce par client **/
                                            $url_fiche_detail = $this->baseUrl() . '/index/fiche/id/' . $poste['poste_id'].'/'.str_replace('é','e',$poste['contrat_nom']).'/'.$poste['poste_intitule'];
                                            //$url_lieu = $this->baseUrl() . '/index/recherche?cr=poste&loc='.$poste['agence_ville'];
                                            print '<li onclick="window.location = \''.$url_fiche_detail.'\';" style="cursor: pointer">';
                                            print '<a class="job_title" href="'.$url_fiche_detail.'">';
                                            print $poste['poste_intitule'];
                                            print '</a><br />';
                                            print '<a class="job_place" href="'.$url_fiche_detail.'">';
                                            print $poste['agence_ville'];
                                            print '</a>';
                                            print '<a class="job_place" style="padding: 0 .5em" href="'.$url_fiche_detail.'">';
                                            print $poste['cli_rs'];
                                            print '</a>';
                                            print '</li>';
                                        }
                                      }
                                      print '</ul></div>';
                                    }
                                    ?>
                              <div class="clear"></div>
                            </div>
    Le print_r me renvoit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Array ( [0] => [1] => )
    Si vous voyez d'ou ça peut venir. Merci

    Mon bootstrap inclut mon config.ini qui contient les logs de connexion a la base de données.

    Personne ne voit pourquoi je perds la connexion à la base de données quand je fais mon include??

    Merci d'avance pour votre aide.

  2. #2
    Membre chevronné Avatar de manuscle
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2004
    Messages : 488
    Par défaut
    Salut,

    C'est un fichier que tu attaque directement depuis une url genre recruteAgence.php?
    Fait voir ton bootstrap et ton config.ini

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 488
    Par défaut
    oui c'est ça j'appelle juste ma page recruteAgence.phtml dans ma page accueil.phtml qui elle est appellé par une page index.php pour laquelle j'ai une action indexAction qui fait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    public function indexAction() {
        /**
                * HOME PAGE
                */
       if ($this->_request->getParam('norender')) {
          $this->_helper->viewRenderer->setNoRender();
          Zend_Layout::getMvcInstance ()->disableLayout ();
          return true;
        }
        $this->render('box/tags','left',True);
        $this->view->link = $this->_request->getParam('link');
        //Layout personnalisé
        //   $this->_helper->viewRenderer->setNoRender();
        $tAgences = new Agences();
    //    $agences = $tAgences->getAllAgences(null,'agence_id');
        $this->view->devinfo = array();
        //print_r ($agences);
     
        $paginate = array();
        $paginate['currentPage']=1;
        $paginate['rowPerPage']=1;
        $tPostes = new Postes();
        foreach ($agences as $agence) {
          $poste=$tPostes->getByAgId($agence['agence_id'],$paginate);
          if (count($poste)) $postes[$poste[0]['poste_date_update']] = $poste[0];
        }
        krsort($postes);
        $tmpPostes = array_chunk($postes,14);
        $postes = $tmpPostes[0];
        $this->view->postes = $postes;
     
     
        $this->_helper->layout->setLayout('accueil');
     
    }
    et comme mon layout est sur ma page d'accueil...quand je lui demande la valeur de this->postes dans ma page recruteAgence.phtml, il comprend plus rien...ce que je veux bien comprendre mais comment alors pallier ça?

  4. #4
    Membre chevronné Avatar de manuscle
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2004
    Messages : 488
    Par défaut
    Petite rectification... ce n'est pas une page que tu appelle mais un template....

    Ensuite on ne bootstrap pas une application dans un template ... normalement ton application est déjà initialisée!
    est-ce que ça t'affiche une erreur quelconque?
    Pourquoi tu fait ceci dans indexAction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
          $this->_helper->viewRenderer->setNoRender();
          Zend_Layout::getMvcInstance ()->disableLayout ();
          return true;

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 488
    Par défaut
    Pour la deuxième question, franchement je sais pas.

    Et pour la première, non pas d'erreur j'arrive juste pas a récupérer la valeur de mon this->postes ou autre résultat "base de donnée"
    Je comprend pourquoi "l'include" perd le résultat de l'action index de mon controlleur?

  6. #6
    Membre chevronné Avatar de manuscle
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2004
    Messages : 488
    Par défaut
    En fait ce que tu veux faire c'est integrer le script './includes/recruteAgence.phtml' dans un autre script de vue c ça?

    Si oui c'est normal qu'il perde les valeurs car celles-ci sont initialisées et envoyées à la vue dans indexAction...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JDBC][MySQL] Connexion à la base de données
    Par El Saigneur dans le forum JDBC
    Réponses: 8
    Dernier message: 04/08/2005, 13h52
  2. ERREUR DE CONNEXION à une base de donnée ACCESS protégée
    Par unionriton dans le forum Bases de données
    Réponses: 4
    Dernier message: 09/05/2005, 09h35
  3. Delphi Connexion à une base de donnée distante par TCP/IP
    Par viecel dans le forum Bases de données
    Réponses: 1
    Dernier message: 12/01/2005, 19h19
  4. Echec lors de la connexion à la base de données.
    Par mclown dans le forum PostgreSQL
    Réponses: 8
    Dernier message: 26/10/2004, 23h36
  5. Réponses: 3
    Dernier message: 29/03/2004, 18h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo