meta refresh ändern

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

  • meta refresh ändern

    Hallo,

    ich habe folgende drei zeilen mitten in meinem Script.

    PHP-Code:
    if ((empty($_GET['autor'])) OR (empty($_GET['kommentar']))) 
    {
    echo 
    "<meta http-equiv='refresh' content='0; url=news.php";

    Habe dabei zwei Probleme / Fragen. Soweit funktioniert alles im IE 5.01 - 7.0 und im Opera sowie Safari. Allerdings geht es nicht im Firefox. Der akzeptiert zwar mein Meta Refresh, allerdings nicht die angehängten Variablen.

    Deswegen würde ich das gerne abändern und mit Header machen.

    erstens würde er nicht ganz kurz auf die Seite springe und dann erst die Variablen verarbeiten und außerdem funktioniert es dann auch im FF.

    Wenn ich aber das mit dem Header da hin schreibe wo das Meta-Refresh steht kommt die bekannt Fehlermeldung das der Header schon gesendet wurde. Ist auch klar da mein Header nicht ganz oben auf der Seite setht. Aber ich kann es ja in diesem Fall nicht nach oben schreiben, sondern es muss ja in dieser abfrage sein. Wie kann ich es machen? Muss ich auf eine andere Seite verlinken wo dann eine Datei mit dem Header ist? Wie verlinke ich AUTOMATISCH ohne das man auf irgendetwas klicken muss?

    Hier mein momentaner Code für den Header:

    PHP-Code:
    header("Location:news.php"
    Mist der macht mir hier automatisch einen Link draus. also hoffe das ihr erkennen könnt wie ich es geschrieben habe.

    Das zweite ist. Meine Fehlermeldung, die in den angehängten Variablen steht wird überall korrekt angezeit nur nicht im opera, der stellt mir das ü nicht richtig da, sondern gibt mir den "code" für das ü aus. Wieso?

    Hoffe hier auf Hilfe.
    Danke udn Gruß
    Jochen
    Zuletzt geändert von Jache84; 05.02.2007, 09:56.

  • #2
    Re: meta refresh ändern

    Original geschrieben von Jache84
    Aber ich kann es ja in diesem Fall nicht nach oben schreiben, sondern es muss ja in dieser abfrage sein.
    Warum "kannst" du das nicht?
    Natürlich kannst du - du musst nur auch wollen.

    Strukturiere deine Scripte sauber - erst Verarbeitung, dann Ausgabe.



    Und die Regeln für das Posten von Code sollten dir auch inzwischen bekannt sein - also anpassen, vor der nächsten Antwort bitte.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Re: meta refresh ändern

      Original geschrieben von Jache84
      Das zweite ist. Meine Fehlermeldung, die in den angehängten Variablen steht ...
      die müsste schon per urlencode() bearbeitet werden.
      ich würde aber nur einen fehlercode (id) mitgeben:
      fehler_new_comment=1
      sonst könnte jemand deinen link manipulieren und lustige "fehlermeldungen" bis hin zu js übergeben.

      Kommentar


      • #4
        Hallo,

        spitze. Dankeschön hat wunderbar geklappt. Auf die Idee kam ich nicht. Dankeschön und schönen Tag.

        LG
        Jochen

        Kommentar


        • #5
          Re: Re: meta refresh ändern

          Original geschrieben von 3DMax
          die müsste schon per urlencode() bearbeitet werden.
          ich würde aber nur einen fehlercode (id) mitgeben:
          fehler_new_comment=1
          sonst könnte jemand deinen link manipulieren und lustige "fehlermeldungen" bis hin zu js übergeben.
          und dann anschließend abfragen wenn fehlermeldung = 1 dann gebe mir das aus!? Auslesen aus DB?

          Kommentar


          • #6
            Re: Re: Re: meta refresh ändern

            Original geschrieben von Jache84
            und dann anschließend abfragen wenn fehlermeldung = 1 dann gebe mir das aus!? Auslesen aus DB?
            naja, dann brauchst du ein mapping.
            1 entspricht - bitte alle felder ausfüllen
            2 entspricht - bitte feld xy ausfüllen
            usw. ...

            wo du die fehlermeldungen ablegst, ist egal, könnte eine db-sein, aber auch ein array...

            alternativ kannst du die fehlermeldung auch in eine session schreiben und die dann wieder rausholen, dann brauchst du gar keinen get-parameter.

            Kommentar


            • #7
              Hey,

              also das mit den Sessions fand ich gut. Habe ich so gemacht udn funktioniert auch wunderbar. Allerdings habe ich ein Problem.

              Wenn einer jetzt das Feld leer lässt, schreibt er in eine Session Var meine Fehlermeldung. Und gibt diese beim erneuten Seitenaufruf aus.

              Mein problem ist jetzt das wenn ich dann auf irgendetwas anderes klicke, immernoch in der Seite News, und dann anschließend wieder mal dahin gehe, steht die Fehlermeldung noch immer da, da die Session ja immernoch geöffnet ist udnd ie Variable immernoch da drin ist. Wie mache ich das dann, ich kann die Session ja am Anfang nicht destroyen, da ich sie ja noch brauch, da die Variable ja erst bei erneutem Seitenaufruf angezeigt wird.

              Eine Idee?

              oder soll ich nachdem die Variable angezeit wird, direkt in die Session_Var einfach einen Leer sitring schreiben?

              LG
              Jochen

              Kommentar


              • #8
                Original geschrieben von Jache84
                oder soll ich nachdem die Variable angezeit wird, direkt in die Session_Var einfach einen Leer sitring schreiben?
                das ist ja wohl das logischste, oder?

                aber mal was anderes, wozu machst du bei fehlerhaften eingaben überhaupt eine weiterleitung? stichwort: affenformular

                Kommentar


                • #9
                  also, das ist ja genau mein problem. Ich mache gerade meine komplette Seite neu.
                  Hatte vorher alles in Tabellenlayout und jetzt nicht mehr. Bin an meiner ersten Seite immernoch und möchte die nahezu perfekt machen, das ich so eine art "so mache ich die anderen auch" habe. Möchte jetzt alles wirklich richtig haben, bevor ich bald wieder anfangen muss.

                  Also die Seite ist hier zu sehen um die es geht.
                  www.ministranten-stvitus.de/minis_css/news.php

                  Was mir nicht gefällt, es wird alles mit GET übergeben. Allerdings habe ich viele Links, wie z.B. bei den news, wenn ich auf Comments klicke wird mir das halt alles übergeben und dass in einem a href. da kann ich ja ohne JS nichts mit Post übergeben.

                  Das andere ich mache die Weiterleitung, da ich mir bestimmt Variablen die oben drüber generiert werden wieder neu schreiben lassen muss. Deswegen der erneute AUfruf. Das geht bestimmt anders und vor allem SCHÖNER UND BESSER. aber da braüchte ich mal hilfe.

                  Ich hänge hier einfach mal meine php datei an. Denn die hier rein zu laden ist zu viel. Ich würde mich total freuen wenn mir einer ein paar tipps geben könnte, wie ich das alles besser machen könnte und sinnvoller um code zu sparen. Ebenfalls würde ich gerne wissen ob sich ein CMS wie Smarty lohnt.

                  Danke und Lieben Gruß
                  Jochen
                  Angehängte Dateien
                  Zuletzt geändert von Jache84; 05.02.2007, 11:11.

                  Kommentar


                  • #10
                    Re: meta refresh ändern

                    Original geschrieben von Jache84
                    PHP-Code:
                    if ((empty($_GET['autor'])) OR (empty($_GET['kommentar']))) 
                    {
                    echo 
                    "<meta http-equiv='refresh' content='0; url=news.php";

                    Tut mir echt Leid, aber ich konnte nicht früher antworten, da ich heute nicht so schnell aus der Schule kam... Ganz kurz: Hast du eventuell etwas mit den ' bzw. " falsch gemacht? Und nebenbei: DA FEHLT EIN > Meine meta-tags sahen immer so aus:

                    PHP-Code:
                    <meta http-equiv="refresh" content="3; URL=http://www.beispiel-url.de/index2.php"
                    Ob das jetzt einen Unterschied macht, weiß ich nicht. Wenn nicht, dieses Beitrag bitte ignorieren!
                    "I am what I am and I do what I can..."
                    Meine HP -- Mein GPG-Key
                    Meine Projekte: WebStorage 2.0 -- easyAJAX-Chat 2.2.0 (beta)

                    Kommentar


                    • #11
                      ähm, das mit dem meta refresh hat sich schon erledigt, habe es mit Header gemacht, dank der Hilfe von Wahsaga. trotzdem danke dir. Mein anderes war das "Problem" mit meinem Skript, siehe Post zuvor.

                      Danke und Lieben Gruß
                      jochen

                      P.S. Dazu habe ich das wegen deinen ' oder " in einem Echo. Somit kann ic die doppelten nicht nehmen, da mir sonst mein Echo unterbrochen wird. Es sei denn ich hätte den Echo befehl in einfach Hochkommatas geschrieben, dann wäre es gegangen.

                      Kommentar


                      • #12
                        Hm, ist mein Code so schlimm, das niemand mehr antworten will

                        Hoffe doch noch auf ein paar hilfreiche Antworten

                        Dankeschön im Voraus.

                        LG
                        Jochen

                        Kommentar


                        • #13
                          PHP-Code:
                           <?
                          # Diese Funktion muss vor jeglicher
                          # Textausgabe im Browser stehen.
                          # Am besten ganz am Anfang !
                          function autoforward($url,$seconds=3)
                          {
                            if (substr($url,0,7)!="http://") $url="http://".$url;
                            header("refresh:".$seconds.";url=".$url);
                          }

                          ?>

                          Kommentar


                          • #14
                            Hallo Frankburian,

                            Dir auch Danke, aber ich weiß nicht ob ihr alle imernur den ersten Thread lest. Das Problem mit dem Refresh ist gelöst. Hatte eine Datei hochegladen udn wollte Meinungen dazu haben, siehe oben. Danke

                            Kommentar


                            • #15
                              Weiß nicht, antwortet mir hier noch jemand oder soll ich ein neues thema auf machen, in welchem Bereich. handlet sich noch imemr um das obige Problem. Naja nicht wirklich Problem eher ideen einholung und Tipp einholung.

                              LG
                              Jochen

                              Kommentar

                              Lädt...
                              X