die nächsten kalender termine ausgeben

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

OK, die ersten codezeilen stehen,
aber so ganz funktioniert es noch nicht...

vielleicht findet ja einer einen offensichtlichen fehler

Code: Alles auswählen

<?php
define('IN_PHPBB', true);
$phpbb_root_path . './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'includes/bbcode.'.$phpEx);

$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);

$gen_page_header = true;
$page_title = 'die nächsten n termine im calender';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

  $abfrage = "SELECT * FROM `".TOPICS_TABLE."` WHERE forum_id == '22' AND  topic_calendar_time != 'NULL' ORDER BYtopic_calendar_time ";
  if( !( $result = $db->sql_query($sql) ) )
   {
      message_die(CRITICAL_ERROR, 'Kann Themen Informationen nicht laden!', '', __LINE__, __FILE__, $sql);
   }      

echo $abfrage;
echo "<br>";
echo $abfrage[topic_calendar_time];

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>
angezeigt werden sollen erstmal alle topics (namen) aus dem forum "22" bei denen ein topic_calendar_time eintrag vorhanden ist
in den reihen die kein timestamp enthalten steht "NULL"

kolja

zu sehen hier: http://mona-davinci.de/phpbb/tcmanzeige.php
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Code: Alles auswählen

  $abfrage = "SELECT * FROM `".TOPICS_TABLE."` WHERE forum_id == '22' AND  topic_calendar_time != 'NULL' ORDER BYtopic_calendar_time ";
// Wir wollten doch die neuesten 5?
  if( !( $result = $db->sql_query($sql) ) )
   {
      message_die(CRITICAL_ERROR, 'Kann Themen Informationen nicht laden!', '', __LINE__, __FILE__, $sql);
   }     

echo $abfrage;
echo "<br>";
echo $abfrage[topic_calendar_time];
Autsch!

Erst belegt Du eine Varibale $abfrage mit einem Query, aber der zur DB geschickte heisst dann $sql?
Du bekommst einen Handle zurück ($result), aber Du wertest den garnicht aus....
Wir erwarten doch ein Array und das willst Du mit ECHO ausgeben?

Probiere es so:

Code: Alles auswählen

  $sql = "SELECT * FROM " . TOPICS_TABLE . " WHERE forum_id = 22 AND  topic_calendar_time IS NOT NULL ORDER BY topic_calendar_time DESC LIMIT 5";
  if( !( $result = $db->sql_query($sql) ) )
   {
      message_die(CRITICAL_ERROR, 'Kann Themen Informationen nicht laden!', '', __LINE__, __FILE__, $sql);
   }
$abfrage = array();
  while ( $row = $db->sql_fetchrow($result) )
{
//Werte zuordnen	
$abfrage[]['ausgelesene_Werte'] = $row['ausgelesene_Werte'];
}
print_r($abfrage);
An der Wertezuordnung muss man noch etwas feilen. Aber prinzipiell sollte es so klappen.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

fertig :-)

http://mona-davinci.de/phpbb/tcmanzeige.php

danke für deine hilfe
template und erklärungen kommen morgen

kolja
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Wieder was fertig.... :)
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

äähh noch nicht ganz...

ich komme mit der template zuweisung nicht zurecht...

hab mit den kb artikel als vorlage genommen, aber so funktioniert es leider nicht:

Code: Alles auswählen

//Werte zuordnen   
	if ( $row['topic_calendar_time']  > $timestamp ) {
		$template->set_filenames(array(
		'body' => 'calnext.tpl'
		));
		for($i=1; $i<=5; $i++) {
		$template->assign_block_vars('zahlen', array( 
		'T_TITLE' => $row['topic_title'],
		'DATE' => date("d.m.Y",$row['topic_calendar_time']),
		));
}}}
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
schade..

kolja
Zuletzt geändert von kolja am 09.12.2006 13:38, insgesamt 1-mal geändert.
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Den Code hast Du zum Laufen gebracht?
'DATE' => date("d.m.Y",$row[topic_calendar_time]),
));
Und gewöhne Dir bitte an $row[topic_calendar_time] so zu schreiben $row['topic_calendar_time']. Das ändert im Moment nichts am Code als solches. Nur weil PHP topic_calendar_time als Index nicht kennt, wird dieser Wert intern in eine Zeichenkette umgewandelt. Das muss aber nicht immer klappen.
Und wer weiss, wie PHP6 darauf reagiert.
Zuletzt geändert von Miriam am 09.12.2006 14:00, insgesamt 1-mal geändert.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

:oops: ja der code lief so :oops:

ich hatte mir das von der timestamp ausgabe abgeschaut:

Code: Alles auswählen

date("d.m.Y",$timestamp)
und ne ausgabe über echo lief ja auch genau so wie ich wolllte,
nur die template übergabe klappt immer noch nicht

kolja

p.s. code oben ist aktualisiert
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Na wenn Du es so nicht hinbekommst, dann schreibe es vorher in eine Variable und weise es dann in den Templatevariablen zu.

Aber ich sehe gerade, dass die SQL Abfrage Schrott ist....
Du wolltest doch nicht die 5 neuesten, sondern die 5 nächsetn kommenden Ereignisse haben. Oder?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

ok das mit dem "umweg" über die variable werd ich mal versuchen
was macht denn das für einen unterschied ??

wg SQL

ja ich hab sie etwas angepasst :wink:
das ist der teil bis zur ausgabe:

Code: Alles auswählen

$timestamp = time();
  $sql = "SELECT * FROM " . TOPICS_TABLE . " WHERE forum_id = 22 AND  topic_calendar_time IS NOT NULL ORDER BY topic_calendar_time";
  if( !( $result = $db->sql_query($sql) ) )
   {
      message_die(CRITICAL_ERROR, 'Kann Themen Informationen nicht laden!', '', __LINE__, __FILE__, $sql);
   }
$abfrage = array();
while ( $row = $db->sql_fetchrow($result) ){
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

also mit dem umweg klappt das leider auch nicht:
//Werte zuordnen
if ( $row['topic_calendar_time'] > $timestamp ) {
$template->set_filenames(array(
'body' => 'calnext.tpl'
));

$titel = $row['topic_title'];
$datum = date("d.m.Y",$row['topic_calendar_time']);

for($i=1; $i<=5; $i++) {
$template->assign_block_vars('zahlen', array(
'T_TITLE' => $titel,
'DATE' => $datum
));
}}}
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
kolja, der so langsam verzweifelt...
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Antworten

Zurück zu „Coding & Technik“