Comment lire dans une table ?
Bonjour, je ne maîtrise pas bien la lecture d'une table il y a des choses que je ne sais pas
on va partir de cette table simple
Code:
1 2 3 4 5 6 7
|
CREATE TABLE `testzend`.`admin` (
`id_user` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`nom` VARCHAR( 50 ) NOT NULL ,
`droit` TINYINT UNSIGNED NOT NULL ,
INDEX ( `nom` )
) ENGINE = MYISAM ; |
pour le moment voici mon model de la table image
Code:
1 2 3 4 5
|
class Application_Model_DbTable_Admin extends Zend_Db_Table_Abstract
protected $_name = 'user';
} |
et voici mon controller
Code:
1 2 3 4 5 6 7 8
|
public function indexAction()
{
$user= new Application_Model_DbTable_Admin();
$this->view->user = $user->fetchAll();
} |
et j'affiche avec
Code:
1 2 3 4
|
<?php foreach($this->user as $user):?>
<?php echo $this->escape($user->nom); ?>
<?php endforeach; ?> |
jusqu'a la cela fonctionne, je vois mes nom des utilisateurs.
dite mois si j'ai juste, donc d'après ce que j'ai compris en instanciant new Application ... j'ai son modèle donc la methode fetchAll peut chercher tous les noms des champs et cela donne accès à la base de donnée(mot de pass, login), je pense que c'est Zend_Db_Table_Abstract qui le permet de faire tous cela.
maintenant j'ai besoin d'une jointure entre 2 tables, il faut alors utiliser zend_db select(), il me fait que j'appelle 2 tables.
Code:
1 2
|
ou je dois utiliser select()? dans le modèle user ? dans le controller IndexController ? |
j'ai essayer de faire ceci mais cela ne fonctionne pas
Code:
1 2 3 4 5 6 7 8 9 10
|
class Application_Model_DbTable_Admin extends Zend_Db_Table_Absctract
{
protected $_name = 'user';
public function getAll()
{
$sql = $db->select("SELECT * FROM Admin);//pour simplifier c'est une requête pour une seul table, mais lorque ce test sera fini, je ferais une jointure entre 2 tables
}
} |
je vais appelle cette requête à son controller
Code:
1 2 3 4 5 6 7
|
public function indexAction()
{
$user= new Application_Model_DbTable_Admin();
$user->getAll(); //envoie moi à travers le mondèle Admin la requête select()
} |
ici j'ai une erreur Fatal
merci d'avances pour la réponses :)