Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: propel i multi zapytanie
Forum PHP.pl > Forum > Gotowe rozwiązania > Skrypty obsługi baz danych
menic
Robie projekt w symfony ktore jest oparte na propel'u. Jednak ciągle sa jakies przestoje wynikające z niewiedzy. Teraz mam kolejny problem. Tutaj jest namual do propel'a
http://propel.phpdb.org/trac/wiki/Users/Do...2/Relationships . Robiłem wszystko wg instrukcji i nie wychodzi mi ;/
  1. <?php
  2. //Komentarze
  3. $cc = new Criteria();
  4. $cc->add(CommentPeer::QUESTION_ID, $this->getRequestParameter('id'));
  5. $cc->addAscendingOrderByColumn(CommentPeer::CREATED_AT);
  6. $this->comments = CommentPeer::doSelectJoinUsers($cc);
  7. ?>
  1.  <table name="comment" phpName="Comment">
  2.    <column name="id" type="integer" required="true" primaryKey="true" autoIncrement="true" />
  3.    <column name="question_id" type="integer" required="true" />
  4.    <column name="author_id" type="integer" required="true" />
  5.    <foreign-key foreignTable="users">
  6.      <reference
  7.        local="author_id"
  8.        foreign="id"/>
  9.    </foreign-key>
  10.    <column name="created_at" type="timestamp" />
  11.    <column name="updated_at" type="timestamp" />    
  12.    <column name="title" type="varchar" size="255" required="true" />
  13.    <column name="body" type="longvarchar" required="true" />
  14.  </table>  
  1. <?php if($comments) : ?>
  2. <p><h2>Jest <b><?php echo count($comments) ?></b> komentarzy do tego tematu.</p></h2><br />
  3. <?php foreach ($comments as $comment): ?>
  4. <p><em>Utworzone<?php echo format_date($comment->getCreatedAt()) ?></em></p><br />
  5. autor: <pre><?php echo $comment->getUsers(); ?></pre>
  6.  
  7. <div class="comment" style="margin-bottom:10px;">
  8. <b><?php echo simple_format_text($comment->getTitle()) ?></b><br /><br />
  9. <?php echo simple_format_text($comment->getBody()) ?>
  10. </div>
  11. <?php endforeach ?>
  12. <?php endif ?>
zwraca mi autor:Object id #121. Jak sie dostac do poszczegolnych pol np. nickname czy id?
jupeter
Cześć,

i będzie zwracać, jeżeli wywołujesz tablicę, która może mieć więcej obiektów winksmiley.jpg
Spróbuj:

  1. <?php if($comments) : ?>
  2. <p><h2>Jest <b><?php echo count($comments) ?></b> komentarzy do tego tematu.</p></h2><br />
  3. <?php foreach ($comments as $comment): ?>
  4. <p><em>Utworzone<?php echo format_date($comment->getCreatedAt()) ?></em></p><br />
  5. autorzy: 
  6. <pre><?php foreach($comment->getUsers() as $autor) { echo $autor . ", "; } ?></pre>
  7.  
  8. <div class="comment" style="margin-bottom:10px;">
  9. <b><?php echo simple_format_text($comment->getTitle()) ?></b><br /><br />
  10. <?php echo simple_format_text($comment->getBody()) ?>
  11. </div>
  12. <?php endforeach ?>
  13. <?php endif ?>


Będzie działać gdy ustawisz poprawnie funkcję __toString() w /lib/model/User.php

Pozdrawiam i powodzenia smile.gif
Piotr
menic
Już do tego doszedłem tylko zapomniałem o tym tutaj napisać smile.gif
  1. <?php if($comments) : ?>
  2. <p><h2>Jest <b><?php echo count($comments) ?></b> komentarzy do tego tematu.</p></h2><br />
  3. <?php foreach ($comments as $comment): ?>
  4. <p><em>Utworzone<?php echo format_date($comment->getCreatedAt()) ?></em></p><br />
  5. autor: <pre><?php echo $comment->getUsers()->getNickname(); ?></pre>
  6.  
  7. <div class="comment" style="margin-bottom:10px;">
  8. <b><?php echo simple_format_text($comment->getTitle()) ?></b><br /><br />
  9. <?php echo simple_format_text($comment->getBody()) ?>
  10. </div>
  11. <?php endforeach ?>
  12. <?php endif ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.