Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > Zend_Db
Zend_Db Forum d'entraide pour le composant Zend_Db du Zend Framework (création de requêtes, abstraction, ORM etc.). Avant de poster -> FAQ Zend_Db.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/05/2011, 18h35   #1
Invité régulier
 
Inscription : mars 2011
Messages : 23
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 23
Points : 8
Points : 8
Par défaut zf-db sql

Bonjour,

J'ai beaucoup de mal a comprendre les concept du ZF. je tente de faire une simple requete et un simple affichage afin de mieux comprendre... parce qu'apres, je voudrais que toute les requetes qui sont pour l'instance en sql normal(mysqlconnect etc..) passe en PDO et sous format ZF...

Bref,
Voila mon code :

application.ini:
Code :
1
2
3
4
5
6
7
;configure l'accès à la base de données
resources.db.adapter = "PDO_MYSQL";
resources.db.params.dbname = "xxxxx";
resources.db.params.host = "xxxxx";
resources.db.params.username = "xxxx";
resources.db.params.password = "xxxx";
resources.db.isDefaultTableAdapter = true;
Dans un controller :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
$dbAdapter = Zend_Db_Table::getDefaultAdapter();
$sql = 'Select * FROM users';
 
     $res = $dbAdapter->fetchAll($sql);
 
     foreach ($res as $users) :
 
            echo $users->login;
 
     endforeach;
 
     echo "fin"; exit(0);
Je souhaiterai aussi afficher les donnees sans devoir taper $users->login, mais plutot des truc du genre :
Code :
1
2
3
while ($row2 = mysql_fetch_row($res_st))
{
    $listst .= "<option value'".$row2[2]."' id='".$row2[0]." idT".$row2[1]."'>".$row2[2]."</option>";
ou pour connaitre les titres des colonnes :
Code :
mysql_field_name($this->queryArray, $i)
Il ne se passe rien... j'ai fouiller le net en trouvant a chaque fois des brides de codes, tjrs différent les un des autres... pas moyen de trouve une explication digne du site du zero...


Si quelqu'un peut m'aider..
iamslyper est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 11/05/2011, 18h38   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
tu mélanges 2 API la
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 18h54   #3
Invité régulier
 
Inscription : mars 2011
Messages : 23
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 23
Points : 8
Points : 8
c'est quoi une API pour ZF ?

Si tu parle des exemples : mysql..., je le met en tant qu'exemple. je veux juste attirer l'attention sur le fait que je souhaite transformer tout mon code actuel(c'est a dire plus de 40 requetes sql avec des affichages de select..). Mais je souhaite conserver la possibilite d'encoder une requete classique, parce que mes requetes se transforme en fonction de ce que l'utilisateur choisi etc.

et j'ai beaucoup de requete du style SELECT qui vont piocher dans plusieurs table, donc je pense qu'un model du style Default_Model_DbTable_Users() n'est pas utilisable,non ?
iamslyper est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 11/05/2011, 19h04   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
si, c'est pareil, au lieu de faire un un fetchAll fait un while sur un fetch tout court, ça reviendra au même, du PDO quoi
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 19h11   #5
Invité régulier
 
Inscription : mars 2011
Messages : 23
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 23
Points : 8
Points : 8
J'en suis la maintenant :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$dbAdapter = Zend_Db_Table::getDefaultAdapter();
 
$select = $dbAdapter->query('Select * FROM users');
 
$rows = $select->fetchAll();
 echo count($rows);
     foreach ($rows as $users) :
            echo count($users);
 
            echo $users[1];
 
            echo $users->id;
            echo $users->mail;
            echo $users->login;
            echo $users->password;
            echo $users->role;
 
     endforeach;

Neammoins, comme affichage, j'ai ca :
Donc, cela n'affiche pas les donnee..
iamslyper est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 11/05/2011, 19h19   #6
Invité régulier
 
Inscription : mars 2011
Messages : 23
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 23
Points : 8
Points : 8
ca fonctionne avec :

neammoins, je prefererais que ca fonctionne comme ca : echo $users[1];

as-tu une idee ?

je vais manger.
iamslyper est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 12/05/2011, 10h09   #7
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
change mode de fetch (fetch_row)
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h23.


 
 
 
 
Partenaires

Hébergement Web