KD-one: (oder JS) Wie kann ich Ausgabe bei deaktiviertem JS verhindern?

Hallo alle,

Irgendwie drehe ich mich im Kreis.
Ich möchte die Ausgabe eines PHP-Scriptes bei deaktiviertem JS unterbinden, aber irgendwie fehlt mir der Ansatz völlig, wie ich das angehen könnte.
Mit Document write geht nichts, dann würde ja der blanke PHP-Code in der Seite ausgegeben, weil die Seite ja schon ausgeliefert ist und nicht nochmals geparst wird.
Andererseits ist die Ausgabe des Links zum wechseln der Menüs bei deaktiviertem JS nicht nur sinnfrei, sondern überdies auch ein wenig lächerlich.
Weiss da vielleicht jemand eine Lösung?
Ich denke mal, daß es nicht so einfach sein wird, serverseitige und clientseitige Techniken zu verbinden, wenn es denn überhaupt eine Möglichkeit dazu gibt.
Es geht um den Link "zum Listenmenü" oder auch "zum Ausklappmenü" auf dieser Seite: http://faq.united-web.at/_test/index.php
Es wird bei deaktiviertem JS ebenfalls ein Listenmenü angezeigt, welches den Link zum Wechseln höchst überflüssig macht.

Gruß

Kurt

Gruß

Kurt

--
"Du kannst dich nicht auf deine Augen verlassen, wenn deine Vorstellungen unscharf sind."  (Mark Twain; am. Schriftsteller; 1835-1910)
http://elektro-dunzinger.at
http://shop.elektro-dunzinger.at
  1. Hi,

    Ich möchte die Ausgabe eines PHP-Scriptes bei deaktiviertem JS unterbinden, aber irgendwie fehlt mir der Ansatz völlig, wie ich das angehen könnte.

    bereits beim Aufruf müsste dies bekannt sein.

    Mit Document write geht nichts, dann würde ja der blanke PHP-Code in der Seite ausgegeben, weil die Seite ja schon ausgeliefert ist und nicht nochmals geparst wird.

    Nein, aber die auszugebenden Kommandos sind bereits PHP-geparst.

    Ich denke mal, daß es nicht so einfach sein wird, serverseitige und clientseitige Techniken zu verbinden, wenn es denn überhaupt eine Möglichkeit dazu gibt.

    Es gibt die Serverseite, da findet Dein PHP statt. Wenn das fertig ist, gibt es keine Serverseite und kein PHP mehr. Der erzeugte HTML- und JavaScript-Code muss genau das beinhalten, was Du haben willst.

    Es wird bei deaktiviertem JS ebenfalls ein Listenmenü angezeigt, welches den Link zum Wechseln höchst überflüssig macht.

    Schreibe den Link mit JavaScript raus. Trivial. Ignoriere die Existenz von PHP oder allgemein der Serverseite.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo,

      Schreibe den Link mit JavaScript raus. Trivial. Ignoriere die Existenz von PHP oder allgemein der Serverseite.

      genau. oder setze display:none für diesen link erst per javascript auf display:block/inline etc.

      freundl. Grüße aus Berlin, Raik

      1. Hallo Raik,

        Schreibe den Link mit JavaScript raus. Trivial. Ignoriere die Existenz von PHP oder allgemein der Serverseite.

        genau. oder setze display:none für diesen link erst per javascript auf display:block/inline etc.

        Ursprümglich wurde das JS-Menü auf diese Weise behandelt, wobei sich aber herausstellte, daß der 6er Opera mit dieser Anweisung nicht umgehen konnte.
        Deshalb halte ich diese Lösung leider nur für suboptimal, zumindest solange, solange der 6er  noch ein Thema ist.
        Trotzdem Danke für den Tip. :-)

        Gruß

        Kurt

        --
        "Die Welt hat genug fuer jedermanns Beduerfnisse, aber nicht genug fuer jedermanns Gier."  (Mahatma Gandhi; ind. Politiker; 1869-1948)
        http://elektro-dunzinger.at
        http://shop.elektro-dunzinger.at
        1. Hallo KD-one,

          ... wobei sich aber herausstellte, daß der 6er Opera

          achja, da war doch mal was ... :-)

          freundl. Grüße aus Berlin, Raik

    2. Hallo Cheatah,

      Ich möchte die Ausgabe eines PHP-Scriptes bei deaktiviertem JS unterbinden, aber irgendwie fehlt mir der Ansatz völlig, wie ich das angehen könnte.

      bereits beim Aufruf müsste dies bekannt sein.

      Mit Document write geht nichts, dann würde ja der blanke PHP-Code in der Seite ausgegeben, weil die Seite ja schon ausgeliefert ist und nicht nochmals geparst wird.

      Nein, aber die auszugebenden Kommandos sind bereits PHP-geparst.

      !  :-)

      Es gibt die Serverseite, da findet Dein PHP statt. Wenn das fertig ist, gibt es keine Serverseite und kein PHP mehr. Der erzeugte HTML- und JavaScript-Code muss genau das beinhalten, was Du haben willst.

      Es wird bei deaktiviertem JS ebenfalls ein Listenmenü angezeigt, welches den Link zum Wechseln höchst überflüssig macht.

      Schreibe den Link mit JavaScript raus. Trivial. Ignoriere die Existenz von PHP oder allgemein der Serverseite.

      Ja, heute nachmittag, während ich die Steuerung eines Großküchengerätes reparierte, schoss mir plötzlich der Gedanke durch den Kopf, daß ich das "echo" dazu benutzen könnte, "$ausgabe"  in document.write zu integrieren und das Ganze dann mit echo in die Seiten schreiben zu lassen.
      Im Prinzip derselbe Gedanke wie bei dir, nur hat´s bei mir halt länger gedauert.
      Vermutlich hat mich die gleichzeitige Anwendung von PHP und JS etwas durcheinandergebracht. Werd mich gleich dranmachen. :-)

      So, und nu hab ich im Eifer des Gefechts vergessen, auf Absenden zu klicken. :o)
      Das Ganze hat mich ein wenig ins schwitzen gebracht, vor allem, weil mein Provider die Fehlermeldungen von PHP abgeschaltet hat.
      Es hat eine Weile gedauert, bis ich die richtigen Escapesequenzen heraus hatte:

      <?php
      $ausgabe = "<br><br><br><br><br><br><a class=\"wechsel\" href=\"index.php?menu=1";
       if(isset($HTTP_GET_VARS["content"]))
         {
        foreach($HTTP_GET_VARS as $key=>$elem)
           {
            $ausgabe.="&".$key."=".$elem;
           }
         }
         echo "<script type="text/javascript">\n <!--\n  document.write("";
          echo $ausgabe."\">Zum Listenmenü</a>";
        echo "");\n //-->\n</script>";
        ?>

      Danke dir!

      Gruß

      Kurt

      --
      "Zur Unterhaltung einer Party traegt niemand so viel bei wie diejenigen, die gar nicht da sind."  (Audrey Hepburn; engl.-am. Schauspielerin; 1929-1993)
      http://elektro-dunzinger.at
      http://shop.elektro-dunzinger.at
      1. Hallo KD-one,

        [...]

        }
           echo "<script type="text/javascript">\n <!--\n  document.write("";
            echo $ausgabe."\">Zum Listenmenü</a>";
          echo "");\n //-->\n</script>";
          ?>

        Noch ein kleiner Fehler:
        der Slash bei </a> muss ebenfalls maskiert werden: </a>
        Sonst mault der Validator.... ;-)

        Gruß

        Kurt

        --
        "Der Mensch kann viel ertragen, solange er sich selbst ertragen kann."  (Axel Munthe; schwed. Arzt u. Schriftsteller; 1857-1949)
        http://elektro-dunzinger.at
        http://shop.elektro-dunzinger.at
  2. Hallo KD-one,

    btw.: http://faq.united-web.at/_test/index.php?content=nocache
    das ist nicht ganz richtig. in den cache (temporary internet files) kommen die seiten auf jeden fall. die meta-angaben bewirken nur, das bei erneutem aufruf diese kopie nicht verwendet wird, wenn nicht im browser des users etwas anderes eingestellt ist.
    beim ie ist das die einstellung: extras -> internetoptionen -> allgemein -> temporäre internetdateien -> einstellungen -> neuere versionen der gespeicherten seiten suchen:

    • bei jedem zugriff auf die seite
    • bei jedem start von internet explorer
    • automatisch
    • nie

    Gruß

    Kurt

    Gruß

    Kurt

    ja, Gruß Gruß aus Berlin ;-) , Raik

    1. Hallo Raik,

      btw.: http://faq.united-web.at/_test/index.php?content=nocache
      das ist nicht ganz richtig. in den cache (temporary internet files) kommen die seiten auf jeden fall. die meta-angaben bewirken nur, das bei erneutem aufruf diese kopie nicht verwendet wird, wenn nicht im browser des users etwas anderes eingestellt ist.
      beim ie ist das die einstellung: extras -> internetoptionen -> allgemein -> temporäre internetdateien -> einstellungen -> neuere versionen der gespeicherten seiten suchen:

      • bei jedem zugriff auf die seite
      • bei jedem start von internet explorer
      • automatisch
      • nie

      Oh, danke für die Information, das werde ich natürlich sofort ändern. :-)

      ja, Gruß Gruß aus Berlin ;-) , Raik

      Gruß Gruß

      Kurt ;-)

      PS.: Anscheinend hatte das Forenscript heute einen kleinen Knacks, weil es meine Signatur zweimal eingefügt hat...

      --
      "Tu soviel Gutes, wie Du kannst, und mache so wenig Gerede wie nur moeglich darueber."  (Charles Dickens; engl. Schrifsteller; 1812-1870)
      http://elektro-dunzinger.at
      http://shop.elektro-dunzinger.at