Tages- und stundenabhängige Textanzeige

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Tages- und stundenabhängige Textanzeige

    Hallo,

    ich habe im selbst schreiben von pHp bisher keine Erfahrungen. Auch die Suchfunktion bot mir kein zielführendes Ergebnis. Deshalb wende ich mich hier einmal an das Forum. Ich habe folgendes Problem:

    Abhängig vom jeweiligen Wochentag und der aktuellen Stunde soll auf einer Webseite ein bestimmter 3-zeiliger Text ausgegeben werden, der möglichst noch einen klickbaren Link zu einer anderen Seite auf dem Server haben soll. Der Text soll teilweise in Fettschrift formatiert sein. Die Texte sind jeweils verschieden.

    Ich habe schon mit verschiedenen Funktionen (if, date, etc.) gebastelt, bin aber zu keinem funktionierendem Ergebnis gekommen.

    Es geht konkret um einen Radiosender. Wenn der Hörer die Webseite um 8.13 Uhr anklickt, soll er sehen, dass z.B. Hans Meier mit seiner Sendung Morgenmagazin von 6.00 Uhr bis 10.00 Uhr auf Sendung ist und wenn der Hörer auf diesen Eintrag klickt, soll die Webseite des Moderators Hans Meier aufgehen. Das ganze sollte dann so aussehen:

    6.00 Uhr - 10.00 Uhr
    Hans Meier
    Morgenmagazin

    Kann mir da jemand bitte weiterhelfen? Schon jetzt vielen Dank!

    Nette Grüße,
    Uwe

  • #2
    Du hast eine Zuordnung einer Zeitspanne zu einem Tupel aus Name, Sendung und Link. Um das in PHP abzubilden, bietet sich ein Array an.

    $data = array(zeit => array('n' => name, 's' => sendung, 'l' => link));

    Als Zeit speicherst du nur den Beginn einer Sendung im Format 'HH:ii'. Für eine Sendung von 10:20 bis 12 Uhr wäre es

    $data['10:20'] = array(...);

    Jetzt mußt du nur das zur aktuellen Tageszeit passende Element aus $data ansprechen:
    PHP-Code:
    $now date('H:i');    // Tageszeit
    ksort($data);  // Array nach zeit sortieren
    foreach ($data as $key => $value) {
        if (
    $key $now) {
            echo 
    $value['n'];    // Ausgabe
            
    break;
        }

    Die Ausgabe gestaltest du nach deinen Wünschen und vor dem Vergleich von $key mit $now könntest du beide am Doppelpunkt zerlegen, um Zahlen statt Strings zu vergleichen.

    Kommentar


    • #3
      Hallo!

      Danke für die schnelle Antwort, aber irgendwie verstehe ich das nicht, was ich jetzt wie und wo machen muss. Ich bin wie gesagt im Schreiben von php totaler Laie.

      Am einfachsten wäre es für mich, einen php-String für eine Stunde des Tages zu haben, den ich dann nur noch um die restlichen 23 Stunden des Tages erweitern muss, also direkt mit allen für den Einbau notwendigen Sachen. Das klingt jetzt mach Bequemlichkeit, aber ich bin wirklich auf dem Gebiet total unbeholfen.

      Kann mir da bitte jemand weiterhelfen?

      Danke,
      Uwe

      Kommentar


      • #4
        Gib mal als Beispiel an, wie der String für 10 Uhr inkl. HTML aussehen soll.

        Kommentar


        • #5
          Original geschrieben von onemorenerd
          Gib mal als Beispiel an, wie der String für 10 Uhr inkl. HTML aussehen soll.
          Hallo,

          das ist ja mein problem, weshalb ich hier um Hilfe gerufen habe.

          Es ist ja so gedacht, dass ein Hörer die Webseite z.B. um kurz nach 10 Uhr aufruft und dann auf der Webseite lesen soll:

          10.00 Uhr -12.00
          Hans Müller
          Radiosendung

          und diese 3 Zeilen sollen eigentlich in dem String als Echo drinnen stehen für jede Stunde des Tages.

          Ich hatte so probiert, dass ich eine if-Anfrage mache, z.B. wenn Montag und Stunde = 10 (Minuten sind ja uninteressant, es geht ja nur immer zur vollen Stunde los), dann das Echo mit den 3 Zeilen. Jetzt weiss ich nur nicht, was ich angebe für den Fall, dass die if-Bedingung falsch ist (also die 23 anderen Stunden des Tages und die anderen Tage der Woche) und wie ich die andeen 167 echos reinbringe. Ich brauche also einen String mit einer if-Anfrage und 168 echos dazu, für jede Stunde der Woche ein anderes echo.

          Ich hoffe, ich konnte mich jetzt etwas verständlicher ausdrücken.

          Nette Grüße,
          Uwe

          Kommentar

          Lädt...
          X