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:
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
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:
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:
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:
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:
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:
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> </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