Seite 1 von 1

Integration von Daten aus eigener Datenbanktabelle

Verfasst: 01.08.2005 10:45
von Sunny76
Hallo Leute!

Ich habe in der Datenbank einer bestehenden Webseite Daten (von Sportevents), die ich auf einer Unterseite eines Portals einbinden will.
Die zu benutzende Tabelle liegt in derselben Datenbank wie das Portal (habe den Portal und Intro MOD installiert).

Dafür habe ich die Datei portal.php in eine portal_calendar.php kopiert, dasselbe habe ich mit der portal_body.tpl gemacht und auch den Template-Aufruf geändert. Mit den bisher statisch in die Template-Datei gehackten (war ein Notbehelf) Daten wurde alles auch ganz brav angezeigt.

Nun habe ich in die portal_calendar.php einen Datenbankaufruf integriert, der ebenfalls problemlos funzt.
Diesem Datenbankaufruf folgt natürlich eine while-Schleife.
Es ist mir tatsächlich gelungen, den LETZTEN Datensatz auszugeben, ich möchte aber natürlich ALLE Datensätze ausgeben.

Mir ist schon klar, warum nur der letzte Datensatz ausgegeben wurden, keine Frage.
Funzen tut es hiermit, wie gesagt, letzter Datensatz:

Code: Alles auswählen

$sql = "SELECT * FROM phpbb5_termine";
  if ( !($results = $db->sql_query($sql)) )
  {
           message_die(GENERAL_ERROR, 'Datenbank-Connect-Problem', '', __LINE__, __FILE__, $sql);
  }

while($event_row = $db->sql_fetchrow($results))
   {
   $template->assign_vars(array(
   'EVENT_LOCATION' => $event_row['termin_ort'],
   'EVENT_DATE' => $event_row['termin_tag1'],
                         ));
   }
sowie im Template:

Code: Alles auswählen

<tr><td class="row2" align="left" height="24"><span class="gensmall">{EVENT_LOCATION}</span></td><td>{EVENT_DATE}</td></tr>
Ich bräuchte eigentlich dies hier, um alle Datensätze auszugeben, das ist mir schon klar:

Code: Alles auswählen

...
while($event_row = $db->sql_fetchrow($results))
   {
   $template->assign_block_vars('events', array(
   'EVENT_LOCATION' => $event_row['termin_ort'],
   'EVENT_DATE' => $event_row['termin_tag1'],
                         ));
   }
und

Code: Alles auswählen

<tr><td class="row2" align="left" height="24"><span class="gensmall">{events.EVENT_LOCATION}</span></td><td>{events.EVENT_DATE}</td></tr>
Der kleine Haken daran ist, dass, sobald ich mit dem "assign_block_vars" anfange, nix mehr übergeben wird. Seite wird angezeigt, nur diese speziellen Inhalte nicht.
Kann es daran liegen, dass ich "events" noch an irgendeiner anderen Stelle definieren müsste, die mir nicht bekannt ist und zu der die "Literatur" sich leider ausschweigt und was ich mir jetzt auch nicht o recht vorstellen kann? Oder stimmt an meiner Syntax irgendwas nicht?
Irgendwer eine Idee?

Die Template-Syntax von phpBB habe ich mir durchaus zu Gemüte geführt, mich macht das aber auch nicht noch schlauer.

Re: Integration von Daten aus eigener Datenbanktabelle

Verfasst: 01.08.2005 16:44
von mristau2k5
Sunny76 hat geschrieben:

Code: Alles auswählen

<tr><td class="row2" align="left" height="24"><span class="gensmall">{events.EVENT_LOCATION}</span></td><td>{events.EVENT_DATE}</td></tr>
mach mal aus diesen Codeblock, das hier

Code: Alles auswählen

<!-- BEGIN events -->
<tr><td class="row2" align="left" height="24"><span class="gensmall">{events.EVENT_LOCATION}</span></td><td>{events.EVENT_DATE}</td></tr>
<!-- END events -->

Verfasst: 01.08.2005 19:28
von Sunny76
Vielen lieben Dank, jetzt funktioniert es!

[ externes Bild ] (so'n Smilie fehlt hier)

Und jetzt hab ich noch was dazu gelernt!