Termindatenbank in Contenido

muetom
Beiträge: 12
Registriert: Do 30. Jan 2003, 18:57
Wohnort: Ensdorf / Saar
Kontaktdaten:

Termindatenbank in Contenido

Beitrag von muetom »

Hallo,

gibt es schon einen Termindatenbank für Contenido.

Es wäre toll wenn dort Termine nach Jahren auf verschiedenen Seiten angezeigt werden könnten, und es eine übersicht über anstehened und abgelaufeen Termine gäbe.

Spitze wäre eine übersicht über einige aktuelle Termine auf der Satrseite.


Im moment ist das in 0.93 mit einem Artikel pro Termin Kategorien Für die Jahre und jeweils einer Kategorie Pro Monat sowie dem Nav Modul gelöst.

www.kjg-ensdorf.de


Ich hab sowas in der Art mal im alten Forum gesehen.
muetom
Beiträge: 12
Registriert: Do 30. Jan 2003, 18:57
Wohnort: Ensdorf / Saar
Kontaktdaten:

Beitrag von muetom »

Erinnert sich keiner mehr an das Ding das mal jemand für ne ältere version gebaut hat?

Das war, glaube ich, für ne seite von den Grünen.


Wäre toll wen sich jemand dran erinnert.


Gruß

Thomas
JUG
Beiträge: 113
Registriert: Fr 20. Sep 2002, 12:24
Wohnort: Karlsruhe
Kontaktdaten:

Beitrag von JUG »

Ich ebenfalls, hatte das auch schon mal angesprochen, wurde aber mit "das kost Geld" beerdigt.
road.trippin
Beiträge: 14
Registriert: Mi 5. Feb 2003, 14:54
Kontaktdaten:

Beitrag von road.trippin »

hab so ne kleine termin geschichte letztens geschrieben, die termine werden zeitlich angeordnet und werden nicht mehr angezigt, sobald sie vorbei sind. ist leider noch nicht über input konfigurierbar und sehr spezifisch auf meine anforderungen, man kann nen url als weiterführenden link angeben und mehrtägige termine sind auch möglich.

Code: Alles auswählen

SQL-CODE für DB:

#
# Tabellenstruktur für Tabelle `con_events`
#

DROP TABLE IF EXISTS con_events;
CREATE TABLE con_events (
  id int(11) NOT NULL auto_increment,
  titel varchar(50) NOT NULL default '',
  datum varchar(14) NOT NULL default '',
  desc text NOT NULL,
  ort varchar(50) default NULL,
  online tinyint(1) NOT NULL default '1',
  url varchar(50) default NULL,
  datum2 varchar(14) NOT NULL default '',
  PRIMARY KEY  (id)
) TYPE=MyISAM;


OUTPUT:
$meineseite=$auth->url();


//wenn "online" als aktion übergeben wird und wir noch im edit-modus sind

if (($online > -1) && $perm->have_perm("admin")) {
    $sql = "UPDATE `con_events` SET online=".$online." WHERE id='".$eventid."'";
    //echo $sql;
    $db->query($sql);
}

if (($delete) && $perm->have_perm("admin")) {
    $sql = " DELETE FROM `con_events` WHERE `id` = '".$eventid."' AND online='0'";
    //echo $sql;
    $db->query($sql);
}

//neuer eintrag

if ($send && $perm->have_perm("admin")) {
    $datum1 = str_replace(".", "-", $datum1);
    $datum1 = str_replace("/", "-", $datum1);
    $datum2 = str_replace(".", "-", $datum2);
    $datum2 = str_replace("/", "-", $datum2);
    $uhrzeit = str_replace(".", ":", $uhrzeit);
    $uhrzeit = str_replace("-", ":", $uhrzeit);
    
    $arr = split('-',$datum1);
    $date1 = sprintf("%04d",$arr[2]).sprintf("%02d",$arr[1]).sprintf("%02d",$arr[0]);
    $arr = split(":",$uhrzeit);
    $date1 .= sprintf("%02d",$arr[0]).sprintf("%02d",$arr[1])."00";
    $arr = split(".",$datum2);
    $date2 = sprintf("%04d",$arr[2]).sprintf("%02d",$arr[1]).sprintf("%02d",$arr[0])."000000";
    $sql = "INSERT INTO `con_events` ( `titel`, `datum`, `desc`, `ort`, `online`, `url`, `datum2`) VALUES ('".$titel."', '".$date1."', '".$desc."', '".$ort."', '".$online."', '".$url."', '".$date2."') ";
    $db->query($sql);
}



if($perm->have_perm("admin"))
    $sql = "SELECT * FROM `con_events` WHERE datum > ".date("Ymd")."000000 ORDER BY `datum`";
else
    $sql = "SELECT * FROM `con_events` WHERE datum > ".date("Ymd")."000000 AND online = 1 ORDER BY `datum`";
    
$db->query($sql);

//echo $sql;

$monat = array("Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");

$aktmon = "000000";

// Auslesen des Ergebnisse pro Reihe und Generierung der Seite 
while ($db->next_record()) { 
    echo '<a name="event'.$db->f("id").'"></a>';
    if ($aktmon < substr($db->f("datum"),0,6)) {
        $aktmon = substr($db->f("datum"),0,6);
        echo '<p class="hl3">'.$monat[substr($aktmon,4,2)-1].' '.substr($aktmon,0,4).'</p>';
    }
    echo '<p><b>'.$db->f("titel").'</b></p>';
    echo '<p><i>';
    $mydatum = substr($db->f("datum"),6,2).".".substr($db->f("datum"),4,2).".".substr($db->f("datum"),0,4);
    $mytime = substr($db->f("datum"),8,2).".".substr($db->f("datum"),10,2);
    echo $mydatum." - ".$mytime." Uhr";
    if ($db->f("datum2")>0) {
       $mydatum = substr($db->f("datum2"),6,2).".".substr($db->f("datum2"),4,2).".".substr($db->f("datum2"),0,4);
       $mytime = substr($db->f("datum2"),8,2).".".substr($db->f("datum2"),10,2);
       echo " bis ".$mydatum." - ".$mytime." Uhr";
    }
    echo ", ".$db->f("ort");
    echo ".</i> ";
    echo $db->f("desc");
    if ($db->f("url")!="") {
        echo "<br><br>";
        echo '<a href="'.$db->f("url").'" target="_blank">Weitere Informationen</a>';
    }
    if($perm->have_perm("admin")) {
        if ($db->f("online") == 0) { $imgsrc = "online stellen"; }
        if ($db->f("online") == 1) { $imgsrc = "offline stellen"; }
        echo "<br><br><a href=$meineseite&online=".(($db->f("online")*-1)+1)."&eventid=".$db->f("id").">$imgsrc</a>";
        if ($db->f("online") == 0) echo " | <a href=$meineseite&delete=1&eventid=".$db->f("id").">Löschen</a>";
    }
    echo "</p>";
    
    echo "</a></p>\n";    

}

if ($perm->have_perm("admin")) {
echo '
<p class="hl3">Neue Veranstaltung</p>
<form name="form1" method="post" action="'.$meineseite.'">
  <table width="400" border="0" cellspacing="2" cellpadding="2">
    <tr> 
      <td width="152">Titel</td>
      <td width="234"><input name="titel" type="text" id="titel" size="30"></td>
    </tr>
    <tr> 
      <td>Start-Datum</td>
      <td><input name="datum1" type="text" id="datum1" size="30"></td>
    </tr>
    <tr> 
      <td>End-Datum</td>
      <td><input name="datum2" type="text" id="datum2" size="30"></td>
    </tr>
    <tr> 
      <td>Uhrzeit</td>
      <td><input name="uhrzeit" type="text" id="uhrzeit" size="30"></td>
    </tr>
    <tr> 
      <td>Beschreibung</td>
      <td><text';
      echo 'area name="desc" cols="30" rows="5" id="desc"></text';
      echo 'area></td>
    </tr>
    <tr> 
      <td>Ort</td>
      <td><input name="ort" type="text" id="ort" size="30"></td>
    </tr>
    <tr> 
      <td>Url</td>
      <td><input name="url" type="text" id="url" size="30"></td>
    </tr>
    <tr> 
      <td>Online</td>
      <td><input name="online" type="checkbox" id="online" value="1" checked></td>
    </tr>
    <tr> 
      <td> </td>
      <td><input type="submit" name="send" value="eintragen"></td>
    </tr>
  </table>
</form>
';}

vielleicht bringt euch das ja was :)
muetom
Beiträge: 12
Registriert: Do 30. Jan 2003, 18:57
Wohnort: Ensdorf / Saar
Kontaktdaten:

Beitrag von muetom »

Hallo,

erstmal danke für deine Version, ich werde sie mal testen, und eventuell umbauen.

Ich hab auch die seite wo ich das ding ursprünglich gesehen hab gefunden:

http://www.m-v.gruene.de/

kennt jemand den Entwickler?

Gruß

Thomas
Sausi
Beiträge: 53
Registriert: Do 10. Okt 2002, 11:47
Kontaktdaten:

Beitrag von Sausi »

muetom hat geschrieben:Hallo,
Ich hab auch die seite wo ich das ding ursprünglich gesehen hab gefunden:
http://www.m-v.gruene.de/
kennt jemand den Entwickler?
Gruß
Thomas
Ja, ich kenne den "Entwickler" :) Bin ich nämlich selbst. Allerdings war da nicht viel zu entwickeln. Es handelt sich nur um ein eingebundenes PHP-Skript. Hierdurch wird eine externe Datenbank abgefragt, die im übrigen über ein notdürftig in Contenido eingebundenes Formular (neues Fenster) gepflegt wird.
Wenn ich das oben beschriebene Modul richtig verstanden habe, dann scheint mir diese (nicht meine) Variante wesentlich praktikabler zu sein.
Ich habe das nur noch nicht umgestellt, weil auch Seiten, die nicht mit Contenido gepflegt werden, auf diese Datenbank zugreifen.

Gruß sausi
muetom
Beiträge: 12
Registriert: Do 30. Jan 2003, 18:57
Wohnort: Ensdorf / Saar
Kontaktdaten:

Beitrag von muetom »

Und welches Script benutzt du dafür?

Du hattest das doch mal im alen Forum komplett gepostst.


Gruß


Thomas
muetom
Beiträge: 12
Registriert: Do 30. Jan 2003, 18:57
Wohnort: Ensdorf / Saar
Kontaktdaten:

Beitrag von muetom »

Hallo,

ich hab die Termingeschichte mal versucht einubinden seh aber außer ner leeren Seite gar nix.


Gruß

Thomas
Sausi
Beiträge: 53
Registriert: Do 10. Okt 2002, 11:47
Kontaktdaten:

Beitrag von Sausi »

Hi,

habe mir jetzt mal das Modul unter Win 2000 und Foxserv 2.1 installiert. Allerdings funktioniert es nicht richtig. Ich habe die Datentabelle angelegt, , ich kann das Modul aufrufen und Termine eintragen, die auch in der Datenbank selbst eingefügt werden. Allerdings erscheinen dann keine Termine in der Übersicht. Zudem werden in die Datenbank kryptische Datumsformatierungen eingetragen. Und selbst dann, wenn ich diese von Hand ändere, tut sich auf der Übersicht nichts. Woran kann es liegen?

Gruß Joerg
muetom
Beiträge: 12
Registriert: Do 30. Jan 2003, 18:57
Wohnort: Ensdorf / Saar
Kontaktdaten:

Beitrag von muetom »

Wie hast du das mit dem einbinden gemacht?


Einfach in ein Modul kopiert??? und dann?
road.trippin
Beiträge: 14
Registriert: Mi 5. Feb 2003, 14:54
Kontaktdaten:

Beitrag von road.trippin »

also die datumsformatierungen werden im format jjjjmmddhhnnss als string abgespeichert, da ich noch nicht kapiert habe, wie man mit dem timestamp arbeitet und ich ne zügige lösung brauchte. das skript zeigt auch nur termine an, die nicht schon vorbei sind. bei mir läufts problemlos *grübel* (hab's aber auch nur auf meiner webkiste getestet)
Sausi
Beiträge: 53
Registriert: Do 10. Okt 2002, 11:47
Kontaktdaten:

Beitrag von Sausi »

muetom hat geschrieben:Wie hast du das mit dem einbinden gemacht?


Einfach in ein Modul kopiert??? und dann?
Nein, es gibt doch hier ein Modul, mit dem man externe Skripte einbindet. Dieses habe ich dort einfach eingetragen.
Mein Skript ist im übrigen ganz einfach. Du verbindest einfach zur MySQL-Datenbank, rufst einfach nach bestimmten Kriterien die Daten ab, zeigst sie an und fertig. Die Pflege läuft aber nicht über Contenido sondern über ein x-beliebiges Formular-Tool.

Gruß Joerg
muetom
Beiträge: 12
Registriert: Do 30. Jan 2003, 18:57
Wohnort: Ensdorf / Saar
Kontaktdaten:

Beitrag von muetom »

nein ich mein das von road.trippin. Das kann ich bei mir gar nicht einbinden.

Hab das teil einfach als neues modul angelegt, den SQL-Dump eingespielt, das teil in ein Tamplate eingefügt, und dann bekam ich im Frontend ne leere Seite.




Was mach ich da denn falsch?
Sausi
Beiträge: 53
Registriert: Do 10. Okt 2002, 11:47
Kontaktdaten:

Beitrag von Sausi »

muetom hat geschrieben:nein ich mein das von road.trippin. Das kann ich bei mir gar nicht einbinden.
(...)
Was mach ich da denn falsch?
Na, offensichtlich nichts, denn ich habe genau das gleiche Problem.
Es wird zwar alles ganz ordentlich in die Datenbank eingefügt, letztlich aber nichts angezeigt. Zumindest müßtest Du aber im Backend das Formular angezeigt bekommen.


Gruß Sausi
road.trippin
Beiträge: 14
Registriert: Mi 5. Feb 2003, 14:54
Kontaktdaten:

Beitrag von road.trippin »

*grübelgrübel* hab das modul jetzt nochmal auf einem anderen contenido system installiert und es funktioniert immer noch problemlos. habt ihr denn auch daten eingegeben, die in der zukunft liegenß weil nur die werden auch angezeigt. ansonsten laufen tu es unter http://lautwerden.de/front_single/front ... =6&idcat=6
so sollte es jedenfalls aussehen...
Gesperrt