Alternativer Link bei nicht vorhandenem Dokument

  • Hallo zusammen


    Ich habe folgenden Link eingebaut:

    <a href="pdf/Menu_<%=yyyymmdd%>.pdf" target="_blank" name="cls" id="lllink">Mittagsmenu</a>


    Darunter wird täglich das Mittagsmenu eines Restaurants publiziert. Jedoch gibt es nur von Montag - Freitag ein Mittagsmenu. Wenn ich nun am Wochenende kein PDF hochlade kommt eine 404 Fehlermeldung. Gibt es eine Möglichkeit, dass wenn kein Mittagsmenu hinterlegt ist, alternativ ein bestimmtes Dokument aufgerufen wird.


    Danke im Voraus für eure Hilfe.

  • So vielleicht.

    <?php

    $tag = date('w');

    if ($tag == 0 or $tag == 6) {

    print "Am Wochenende sind keine Bestellungen möglich!";

    } else {

    print '<a href="pdf/Menu_<%=yyyymmdd%>.pdf" target="_blank" name="cls" id="lllink">Mittagsmenu</a>';

    }

    ?>

  • Danke für den Input. Die Idee ist gut, aber funktioniert bei mir nicht.


    Offenbar geht PHP nicht, da es eine ASP Datei ist. Bin davon ausgegangen, dass dies dasselbe wie HTML ist. Aber scheinbar nicht... Hast du dafür auch eine Idee? Bekomm das selbst nicht umgeschrieben.

  • ASP ist, ähnlich wie PHP, eine serverseitige Skriptsprache und die Lösung, die dir djheke angeboten hat, kann man garantiert auch in ASP programmieren. Ich und wahrscheinlich viele andere hier sind jedoch auf PHP fokussiert, aber vielleicht findet sich doch jemand, der dir den Code in ASP übersetzen kann. Wenn nicht ist es auch kein Problem das mit Javascript zu machen.

  • Hab ich mir nun zusammengebastelt und funktioniert, auch wenn es wahrscheinlich zu viele Infos beinhaltet. Danke für den Input djheke! Wäre ohne deine Idee nicht darauf gekommen.


    Für alle die es interessiert:



    <!DOCTYPE html>


    <html lang="en">

    <head>

    <meta charset="utf-8">


    <script>

    var now = new Date(); // current date/time

    var hrs = now.getHours(); // 0 to 23

    var mins = now.getMinutes();

    var secs = now.getSeconds();



    var weekday = new Array(7);

    weekday[0] = "Sunday";

    weekday[1] = "Monday";

    weekday[2] = "Tuesday";

    weekday[3] = "Wednesday";

    weekday[4] = "Thursday";

    weekday[5] = "Friday";

    weekday[6] = "Saturday";

    var day = weekday[now.getDay()];





    if (day == "Saturday") {

    document.writeln('&WCF_AMPERSAND» <b><a href="pdf/Wochenendmenu.pdf" target="_blank" name="cls" id="lllink">Wochenendmenu</a></b>');

    }

    else if (day == "Sunday"){

    document.writeln('&WCF_AMPERSAND» <b><a href="pdf/Wochenendmenu.pdf" target="_blank" name="cls" id="lllink">Wochenendmenu</a></b>');

    }

    else {

    document.writeln('&WCF_AMPERSAND» <b><a href="pdf/Menu_<%=yyyymmdd%>.pdf" target="_blank" name="cls" id="lllink">Mittagsmenu</a></b>');

    }

    </script>

    </head>

    <body></body>

    </html>






    Vielleicht hat ja jemand noch eine Idee, ob es einen zusätzlichen Code gibt, den man hinterlegen kann, falls einmal das Mittagsmenu vergessen gegangen ist hochzuladen. Dann wird von Montag bis Freitag ja auf ein Dokument verwiesen, welches nicht existiert und dann dürfte wieder eine Fehlermeldung kommen. Gibt es eine Möglichkeit dies zu umgehen und für diesen Fall z.b. ebenfalls das Wochenendmenu zu hinterlegen?

  • Ich würde einfach prüfen, ob die betr. Datei existiert. Am einfachsten ginge das ebenfalls serverseitig, aber auch ebenfalls in Javascript mit Ajax, z. B. der fetch-API.

  • Auch wenn der Beitrag älter ist, scheint es eine Art Lösung zu geben 8)


    Bei ASP bin ich eigentlich auch raus, aber scheinbar gibt es die klassische und eine neuere, die glaube ich etwas kompliziert ist :/


    Beispiele

    (getestet mit aktuellem IIS mit ASP/ASP VB) oder so ^^

    Speisekarte für die Woche und für das Wochenende

    Code
    1. <%
    2. if WeekDay(Now)=7 OR WeekDay(Now)=1 then
    3. response.write("<p><a href=""pdf/Wochenendmenu.pdf"" target=""_blank"" name=""cls"" id=""lllink"">Wochenendmenü</a> (PDF)</p>")
    4. else
    5. response.write("<p><a href=""pdf/Mittagsmenu.pdf"" target=""_blank"" name=""cls"" id=""lllink"">Mittagsmenü</a> (PDF)</p>")
    6. end if
    7. %>

    Wochentage

    Beschreibung

    Wert

    vbUseSystemDayOfWeek
    0
    vbSunday (default)1
    vbMonday2
    vbTuesday3
    vbWednesday4
    vbThursday5
    vbFriday6
    vbSaturday7

    Per Datum

    Existiert die Datei mit entsprechenden Datum nicht, dann erscheint nur ein Hinweistext.

    Dieser Beitrag wurde bereits 8 Mal editiert, zuletzt von PadMan ()