Announcement

Collapse
No announcement yet.

MySql abfrage - wenn nicht zutreffend dann

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • MySql abfrage - wenn nicht zutreffend dann

    Hallo zusammen,

    ich möchte gerne die Feiertage in der HP anzeigen lassen, also Logo und Text.

    Code:
    select Feiertag, FeiertagBegin, FeiertagEnde from feiertage where 
    CAST(NOW() as DATEtime) <= FeiertagEnde AND 
    CAST(NOW() as DATEtime) >= FeiertagBegin 
      - INTERVAL 3 day;
    FeiertagBegin, FeiertagEnde sind vom Datentyp DATETIME
    Die Anzeige beginnt 3 Tage vor dem Feiertag.

    das ganze funktioniert auch.

    Problem ist nun was mache ich ausserhalb der Feiertage, dann soll ein normales Logo angezeigt werden.

    Wie kann ich ein anderes Logo anzeigen lassen wenn kein Feiertag ist bzw. der Zeitraum nicht zutrifft ?

    Anders gesagt:

    Wenn der Zeitraum: FeiertagBegin und Feiertag Ende zutrift Logo1,
    sonst
    Logo2

    Bei PHP geht das mit If - Abfrage geht das auch direkt in MySql?

    Bisher im Moment habe ich es noch so gelöst:
    Code:
    <?php
    
    
    $Valentinstag_Anfang = mktime(00,00,00,2,9,2013);
    
    $Valentinstag_Ende = mktime(17,59,59,2,14,2013);
    
    $Sommerzeit_Anfang = mktime(00,00,00,3,28,2013);
    
    $Sommerzeit_Ende = mktime(14,59,59,3,31,2013);
    
    $Ostern_Anfang = mktime(00,00,00,3,28,2013);
    
    $Ostern_Ende = mktime(19,00,00,04,01,2013);
    
    if ($AktuellesDatum <= ($Valentinstag_Ende)&&($AktuellesDatum >= ($Valentinstag_Anfang))){
        include("Valentinstag.php");
    }
    
    elseif ($AktuellesDatum <= ($Sommerzeit_Ende)&&($AktuellesDatum >= ($Sommerzeit_Anfang))){
        include("Sommer-Zeit.php");
    }
    
    elseif ($AktuellesDatum <= ($Ostern_Ende)&&($AktuellesDatum >= ($Ostern_Anfang))){
        include("Ostern.php");
    
    }
    
    else
    include("Willkommen.php");
    ?>

    Was ist Eure Meinung, so lassen wie es ist oder aus der Datenbank auslesen (sofern es mit der Abfrage klappt)?


    Vielen Dank
    Lacido

  • #2
    Code:
    mysql> select if(dayflag=1,'Feiertag','keinFeiertag') as myField from myTable ...;
    wenn dayflag=1 dann gib aus 'Feiertag, sonst gib aus 'keinFeiertag'
    Gruß, defo

    Comment

    Working...
    X