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 Framework PHP Discussion :

Zend framework installation


Sujet :

Zend Framework PHP

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 16
    Par défaut Zend framework installation
    Bonjour a tous =)

    Voila hier j'ai installe le framework Zend, en utilisant le quickstart et donc en rajoutant la library zend dans le dossier library, j'ai active le mode rewrite de apache (wamp) et j'ai mis tous les "Allowoverride None" a "allowOverride All" dans le fichier httpd.conf.

    Ainsi lorsque je vais sur localhost/zend/public/ j’obtiens la page par défaut de Zend, jusque la tout est ok.

    Je décide alors de créer d'autres pages voici comment j'ai modifie la page indexController.php du dossier zend/application/controllers :

    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
    <?php
     
    class IndexController extends Zend_Controller_Action
    {
     
        public function init()
        {
            /* Initialize action controller here */
        }
     
        public function indexAction()
        {
            // action body
    		$this->view->title = "Mes albums";
        }
     
    	public function ajouterAction()
        {
            // action body
    		$this->view->title = "Ajouter un nouvel album";
        }
     
    	public function modifierAction()
        {
            // action body
    		$this->view->title = "Modifier un album";
        }
     
    	public function supprimerAction()
        {
            // action body
    		$this->view->title = "Supprimer un album";
        }
    }
    </code>
     
    Puis j'ai crée les pages ajouter.phtml, supprimer.phtml, modifier.phtml et index.phtml était déjà présente. Ces pages sont situees dans le dossier zend/application/views/scripts/index/
    Ces pages ont toutes la meme mise en forme soit :
    <code type="php">
    <html>
    <head>
    <title><?php echo $this->escape($this->title);?></title>
    </head>
    <body>
    <h1><?php echo $this->escape($this->title);?> </h1>
    </body>
    </html>
    Ainsi lorsque je vais sur l'adresse localhost/zend/public/
    J'obtiens le titre : Mes albums ce qui est logique mais si je vais sur les autres pages :
    localhost/zend/public/index/ajouter
    localhost/zend/public/index/modifier
    localhost/zend/public/index/supprimer

    La page m'affiche une erreur :
    An error occured page not found

    J'ai cherche mais je ne trouve pas la solution> En cherchant on me dis que cela peut provenir du .htacess mais j'ai bien mis le module rewrite et mis allowoverride all donc je ne comprends pas...
    help

    Merci de votre aide

  2. #2
    Membre confirmé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2012
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2012
    Messages : 107
    Par défaut
    il s'agit tout simplement d'un problème de routage. Essaie d'aller à la page:
    localhost/zend/public/index.php/index/ajouter
    par exemple, ça devrait marcher

    Alors c'est très très moche, certes, moi je change ce vilain routage via le .htaccess

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SetEnv APPLICATION_ENV development
     
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^.*$ http://localhost/tonsite/public/index.php/.* [NC,L]

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 16
    Par défaut
    Sereine merci de ton aide ouff quelqu'un ma répondu et a résolu mon PB
    merci bcq ^^

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 16
    Par défaut Zend et affichage base de donnees
    Salut voila j'ai un nouveau pb qui est le suivant :
    Je souhaite afficher les albums existant dans une base de donnees. J'ai suivi le tutoriel ici :http://g-rossolini.developpez.com/tu...page=modele#LV

    J'ai donc crée le fichier config.ini placée dans le répertoire zend/application
    Je suis en local donc j'ai mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    [general]
    db.adapter = PDO_MYSQL
    db.params.host = localhost
    db.params.username = root
    db.params.password = 
    db.params.dbname = zftest

    Ensuite, j'ai chargée ce fichier dans la page index situe zend/public/index.php, voila tout le code qui est rajoute dans ce fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    // Chargement de la configuration
    $config = new Zend_Config_Ini('./application/config.ini', 'general');
    $registry = Zend_Registry::getInstance();
    $registry->set('config', $config);
     
    // Mise en place de la BDD
    $db = Zend_Db::factory($config->db);
    Zend_Db_Table::setDefaultAdapter($db);
    J'ai bien évidemment crée une base de données avec des données, puis j'ai crée le model Albums.php situe zend/application/models/Albums.php et jy ai mis le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php
     
    class Albums extends Zend_Db_Table
    {
        protected $_name = 'albums';
    }
    Et enfin je modifie le controller nomme IndexController en ecrivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    function indexAction()
    {
        $this->view->title = "Mes albums";
        $album = new Albums();
        $this->view->albums = $album->fetchAll();
    }
    et je modifie aussi ma view :
    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
     
    <p><a href="<?php echo $this->url(array('controller'=>'index',
            'action'=>'ajouter')); ?>">Ajouter un nouvel album</a></p>
    <table>
    <tr>
    	<th>Title</th>
    	<th>Artist</th>
    	<th>&nbsp;</th>
    </tr>
     
    <?php foreach($this->albums as $album) : ?>
    <tr>
    	<td><?php echo $this->escape($album->title);?></td>
    	<td><?php echo $this->escape($album->artist);?></td>
    	<td>
            <a href="<?php echo $this->url(array('controller'=>'index',
                'action'=>'modifier', 'id'=>$album->id));?>">Modifier</a>
            <a href="<?php echo $this->url(array('controller'=>'index',
                'action'=>'supprimer', 'id'=>$album->id));?>">Spprimer</a>
    	</td>
    </tr>
    <?php endforeach; ?>
    </table>

    Seulement lorsque je devrais avoir la page avec les résultats moi j'obtiens: "erreur serveur
    le site web a rencontre une erreur lors de l'extaction de http://localhost/zend/public/....."

    Quelqu'un pourrait il m'expliquer ce qui ne vas pas ici ??
    Merci de votre aide

  5. #5
    Membre confirmé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2012
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2012
    Messages : 107
    Par défaut
    cela viens de la config de ton serveur web. T'utilise quoi comme serveur web?

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 16
    Par défaut
    je suis en local sous wamp avec google chrome

  7. #7
    Membre confirmé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2012
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2012
    Messages : 107
    Par défaut
    Est ce que c'est le .htaccess qui fait buger tout ça? (desactive les trucs que je t'ai fait mettre et retourne sur le site avec localhost/zend/public/index.php/index/ajouter ... par exemple.

    Dis le si le htaccess fait planter le site.

    Sinon, as tu activé 'php pdo mysql' dans wamp?

  8. #8
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 16
    Par défaut
    Salut comment je sais si php pdo mysql est active ?
    Pour le .htaccess je ne crois pas qu'il fasse bugge le site, qd j'enleve le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $album = new Albums();
        $this->view->albums = $album->fetchAll();
    du fichier IndexController alors le site ne bug plus, mais bon jai pas la base de donnee quoi...

  9. #9
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 16
    Par défaut
    j'ai remi le .htaccess d'origine et j'ai toujours ce bug mais que sur la page
    http://localhost/zend/public/
    les autres telsque :
    http://localhost/zend/public/index/ajouter s'affiche correctement

  10. #10
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 16
    Par défaut
    concernant php pdo mysql je suis aller sur l'icone de wamp puis dans php extensions et php_pdo_mysql est bien coché
    Je comprend vraiment pas pk ca fct pas le seul truc que je sais c'est que si je supprime:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $album = new Albums();
    $this->view->albums = $album->fetchAll();
    du fichier IndexController alors mon site se ré-affiche mais j'ai pas les données de la BDD, plutôt gênant

  11. #11
    Membre confirmé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2012
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2012
    Messages : 107
    Par défaut
    C'est l'intégralité de ton fichier index.php? (que tu as montré plus haut)

  12. #12
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 16
    Par défaut
    nan voici mon fichier index.php en entier :
    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
     
    <?php
    // Define path to application directory
    defined('APPLICATION_PATH')
        || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
     
    // Define application environment
    defined('APPLICATION_ENV')
        || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
     
    // Ensure library/ is on include_path
    set_include_path(implode(PATH_SEPARATOR, array(
        realpath(APPLICATION_PATH . '/../library'),
        get_include_path(),
    )));
     
    /** Zend_Application */
    require_once 'Zend/Application.php';
     
    // Create application, bootstrap, and run
    $application = new Zend_Application(
        APPLICATION_ENV,
        APPLICATION_PATH . '/configs/application.ini'
    );
    $application->bootstrap()
                ->run();
     
     
    //////// CODE RELATIF A LA BDD //////////////////		
    $config = new Zend_Config_Ini('./application/config.ini', 'general');
    $registry = Zend_Registry::getInstance();
    $registry->set('config',$config);
     
    $db = Zend_Db::factory($config->db);
    Zend_Db_Table::setDefaultAdapter($db);
    je cherche mais je désespère

  13. #13
    Membre averti
    Femme Profil pro
    Webmaster
    Inscrit en
    Février 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Centrafrique

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Février 2012
    Messages : 44
    Par défaut
    Salut; je pense que tu as mal lu le tuto (ton controller n'est pas bon je te renvoie une partie du tuto
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Lister les albums
    Maintenant que nous avons mis en place la configuration, les informations de la base de données et nos squelettes de vues, nous pouvons entrer dans le vif du sujet et afficher quelques albums. C'est fait dans la classe IndexController et nous commençons par lister les albums de la table dans la méthode indexAction() :
    tutoriel-zf/application/controllers/IndexController.php
     
    ...
    function indexAction()
    {
        $albums = new Application_Model_DbTable_Albums();
        $this->view->albums = $albums->fetchAll();
    }
    ...
    et le lienhttp://s-jdm.developpez.com/tutoriel...ramework-1-10/ y a tout A lire et relire je debute aussi c'est cee que j'ai fait

Discussions similaires

  1. [1.x] Installation et configuration du Zend Framework
    Par tiffany dans le forum Symfony
    Réponses: 2
    Dernier message: 21/07/2010, 15h10
  2. [ZF 1.10] installation zend framework
    Par ju0123456789 dans le forum Zend Framework
    Réponses: 17
    Dernier message: 08/07/2010, 14h23
  3. [ZF 1.6] installation de zend framework
    Par rochdi123 dans le forum Zend Framework
    Réponses: 9
    Dernier message: 16/03/2010, 21h12
  4. Installer zend framework dans Xampp
    Par gtraxx dans le forum Zend Framework
    Réponses: 6
    Dernier message: 28/12/2007, 17h24

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