Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > symfony
symfony Forum d'entraide sur le framework PHP symfony. Avant de poster : cours symfony et FAQ symfony
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 02/05/2011, 15h53   #1
Futur Membre du Club
 
nicolas lefebvre
Inscription : mai 2010
Messages : 72
Détails du profil
Informations personnelles :
Nom : nicolas lefebvre

Informations forums :
Inscription : mai 2010
Messages : 72
Points : 18
Points : 18
Par défaut personaliser _list.php backend

slt je ne me souvient plus comment on récupérer les valeur des table.

ma table se nome "collection". J'ai essayer un foreach mes rien affaire.

Merci de votre indulgence .
nlefebvre1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/05/2011, 16h12   #2
Membre habitué
 
Avatar de Nico_F
 
Homme Nicolas
Développeur Web
Inscription : avril 2011
Messages : 95
Détails du profil
Informations personnelles :
Nom : Homme Nicolas
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : Communication - Médias

Informations forums :
Inscription : avril 2011
Messages : 95
Points : 142
Points : 142
Salut,

J'ai l'impression que le titre de ton sujet et ton problème sont quelque peu différents. Si j'ai bien compris tu veux accéder à des valeurs que tu récupères en base de données, puis tu veux les afficher et les mettre en forme dans ton _list.php, à savoir ta vue.

Donc la première étape est de récupérer ces valeurs dans le contrôleur de ton module "collection" je présume (actions.class.php) à l'aide de la requête de ton choix. Tu vas stocker ce résultat dans une variable $collection.

Une fois que tu les as dans le contrôleur, pour les passer à la vue, cette ligne suffit :

Code :
$this->collection = $collection;
Maintenant, tu peux accéder à cette liste dans ton _list.php en utilisant $collection.

Bien entendu, tout ça doit se trouver dans le même module.
Il faudrait un peu plus de détails si cela ne suffit pas à régler ton problème.

Un petit détour par là pourrait te rafraichir la mémoire également : http://www.symfony-project.org/jobee...Doctrine/fr/04
Nico_F est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/05/2011, 18h04   #3
Futur Membre du Club
 
nicolas lefebvre
Inscription : mai 2010
Messages : 72
Détails du profil
Informations personnelles :
Nom : nicolas lefebvre

Informations forums :
Inscription : mai 2010
Messages : 72
Points : 18
Points : 18
pour tous dire j'ai essayer de passe avec :
Code :
1
2
3
4
5
6
7
function executeIndex(){
 
    $this->collection= Doctrine::getTable('Collection')
      ->createQuery('a')
      ->execute();
  }
}
en suite dan ma vu
Code :
1
2
3
4
5
6
<?php
foreach ($collection as $c):
 
?>
<?php echo $c->getTitle();?>
<?php endforeach ?>
j'ai meme essayé de mettre dans la class collection.class.php
Code :
1
2
3
4
5
   function getAll(){
     $q = Doctrine_Query::create()
        ->from('collection')
        ->execute();
    return $q;}
la vue
Code :
1
2
3
4
5
6
<?php
foreach ($collection->getAll() as $e => $c):
 
?>
<?php echo $c->getTitle();?>
<?php endforeach ?>
mes rien a faire
nlefebvre1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/05/2011, 18h29   #4
Membre habitué
 
Avatar de Nico_F
 
Homme Nicolas
Développeur Web
Inscription : avril 2011
Messages : 95
Détails du profil
Informations personnelles :
Nom : Homme Nicolas
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : Communication - Médias

Informations forums :
Inscription : avril 2011
Messages : 95
Points : 142
Points : 142
Vérifie dans un premier temps que tu as bien récupéré ta collection dans ton contrôleur. Fais ton foreach dans le contrôleur et affiche quelque chose ("plop") pour chaque élément parcouru.

Ensuite essaye voir ça :

Code :
1
2
3
4
5
6
7
8
9
$q = Doctrine_Query::create()
  ->from('collection');
 
$collection = $q->execute();
 
foreach($collection as $c)
{
  echo "plop";
}
s'il t'affiche des plop, tu récupères une collection d'éléments.

Seulement ensuite tu vérifies que ça ne vient pas d'un problème avec tes accesseurs : je vois que tu as essayé plusieurs techniques ($collection->getAll()->getTitle ou parfois juste $collection->getTitle) : une fois que tu es sûr d'avoir une collection non vide, tu testes avec tes accesseurs.

Et une fois que ta boucle affiche tes données dans le contrôleur alors tu passes ta collection à la vue via un :

Code :
$this->collection = $collection;
Si tu partages ton schema.yml ce sera aussi plus simple, si le problème vient des méthodes de ton objet.
Nico_F 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 07h21.


 
 
 
 
Partenaires

Hébergement Web