Daten an Server senden ohne Reload

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

  • Daten an Server senden ohne Reload

    Hallo,

    ist es möglich Daten an den Server zu senden (die dann in einem PHP-Script serverseitig verarbeitet werden) ohne die Seite neu laden zu müssen.
    Ich brauche auch nicht unbedingt eine Rückmeldung vom Server.

    Die Änderung wird lokal per JS durchgeführt und die Änderung soll eben auf dem Server abgespeichert werden, dass beim nächsten Aufruf die Einstellung noch stimmt.

    Danke für eure Hilfe!

    my|DCF
    Apache 1.3.27
    PHP 4.2.1
    MySQL 2.5.1
    SuSE Linux 8.1

  • #2
    über einen unsichtbaren frame der neugeladen wird.
    php serverseitig braucht einen anstoß (vom benutzer) um das script auszuführen

    Kommentar


    • #3
      Das ich serverseitig was anstoßen muss ist klar...

      aber wenn ich das Ding frame, handle ich mir damit ja auch alle Nachteile von Frames ein
      Trotzdem: da müsste ich einfach nen frame mit height=0 machen?

      my|DCF
      Apache 1.3.27
      PHP 4.2.1
      MySQL 2.5.1
      SuSE Linux 8.1

      Kommentar


      • #4
        dafür gibt's den statuscode 204, per header() ja leicht auszulösen.

        http://www.w3.org/Protocols/HTTP/HTRESP.html:

        No Response 204
        Server has received the request but there is no information to send back, and the client should stay in the same document view. This is mainly to allow input for scripts without changing the document at the same time.



        ob's alle relevanten browser korrekt implementiert haben, wäre ggf. noch zu überprüfen.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Original geschrieben von wahsaga
          ob's alle relevanten browser korrekt implementiert haben, wäre ggf. noch zu überprüfen.
          IE 6, FF 1.0 und Opera 7.23 interpretieren korrekt.

          Kommentar


          • #6
            das klingt gut! muss ich nachher gleich mal probieren!

            DANKE
            Apache 1.3.27
            PHP 4.2.1
            MySQL 2.5.1
            SuSE Linux 8.1

            Kommentar


            • #7
              Original geschrieben von my|DCF
              das klingt gut!
              ... ja, das tut es.

              Allerdings steig ich da nicht ganz durch, interessier mich aber dafür.
              @my|DCF: wenn du das fertig hast, kannst du dann bitte den relevanten Code posten?

              btw: man muss das Rad ja nicht zweimal erfinden - oder: wer es nicht schnallt, der lässt sich helfen
              [COLOR=royalblue]Ein großes DANKE an alle, die sich auf selbstlose Weise im Forum einbringen.[/COLOR]

              [COLOR=silver]btw: REAL PROGRAMMERs aren't afraid to use GOTOs![/COLOR]

              [color=indigo]Etwas ernster, aber auch nicht weiter tragisch, sieht die Situation bei Software-Patenten aus. Software-Patente sind eine amerikanische Erfindung und stehen auf dem selben Blatt wie genveränderte Babynahrung, die im Supermarkt nicht mehr als solche gekennzeichnet werden soll, um die Hersteller nicht gegenüber denen natürlicher Produkte zu diskriminieren ...[/color]
              (from here)

              Kommentar


              • #8
                Original geschrieben von Meillo
                Allerdings steig ich da nicht ganz durch
                da gibt es eigentlich nicht viel, durch das man durchsteigen müsste.

                du lässt dein script bei aufruf einfach seine funktionen ausführen (datenbankeinträge, in eine datei schreiben, whatever) - und lässt es dann anschließend per header() den http status code 204 zurückliefern.

                that's it.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  ja, funktioniert danke!

                  hier der code:

                  PHP-Code:
                  # put this at the very top of your php-pages
                  if($checkYourCondition) {
                    
                  #run your commands
                    
                  save_file("foobar");
                    
                  # sending no response
                    
                  header("HTTP/1.0 204 No Response");
                    
                  header("Status: 204 No Response");
                    
                  # make sure to send no other data
                    
                  exit;

                  welchen header-code brauche ich eigentlich? oder sollte ich am besten beide senden?
                  Apache 1.3.27
                  PHP 4.2.1
                  MySQL 2.5.1
                  SuSE Linux 8.1

                  Kommentar


                  • #10
                    der erste reicht völlig aus

                    Kommentar


                    • #11
                      der erste Header löst bei mir einen Fehler aus.
                      der Zweite funzt aber ohne Probs.

                      --

                      btw: dieser Thread ist die Antwort auf meine hier gestellte Frage - also: Danke!
                      [COLOR=royalblue]Ein großes DANKE an alle, die sich auf selbstlose Weise im Forum einbringen.[/COLOR]

                      [COLOR=silver]btw: REAL PROGRAMMERs aren't afraid to use GOTOs![/COLOR]

                      [color=indigo]Etwas ernster, aber auch nicht weiter tragisch, sieht die Situation bei Software-Patenten aus. Software-Patente sind eine amerikanische Erfindung und stehen auf dem selben Blatt wie genveränderte Babynahrung, die im Supermarkt nicht mehr als solche gekennzeichnet werden soll, um die Hersteller nicht gegenüber denen natürlicher Produkte zu diskriminieren ...[/color]
                      (from here)

                      Kommentar


                      • #12
                        Naja ... 'ne Antwort habe ich dort auch schon gegeben ... nur keiner hat's verstanden ...
                        carpe noctem

                        [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                        [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                        Kommentar


                        • #13
                          Original geschrieben von goth
                          ... nur keiner hat's verstanden ...
                          ... jo, manchmal bist du halt etwas zu hoch für uns
                          [COLOR=royalblue]Ein großes DANKE an alle, die sich auf selbstlose Weise im Forum einbringen.[/COLOR]

                          [COLOR=silver]btw: REAL PROGRAMMERs aren't afraid to use GOTOs![/COLOR]

                          [color=indigo]Etwas ernster, aber auch nicht weiter tragisch, sieht die Situation bei Software-Patenten aus. Software-Patente sind eine amerikanische Erfindung und stehen auf dem selben Blatt wie genveränderte Babynahrung, die im Supermarkt nicht mehr als solche gekennzeichnet werden soll, um die Hersteller nicht gegenüber denen natürlicher Produkte zu diskriminieren ...[/color]
                          (from here)

                          Kommentar


                          • #14
                            Weiss Gott ... das ist so ...
                            carpe noctem

                            [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                            [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                            Kommentar


                            • #15
                              Original geschrieben von Meillo
                              der erste Header löst bei mir einen Fehler aus.
                              der Zweite funzt aber ohne Probs.
                              EDIT:
                              Auf meiner Domain funktioniert nur der Erste! *komisch*
                              Man muss wohl je nach Webserver den richtigen Header wählen ...

                              [COLOR=royalblue]Ein großes DANKE an alle, die sich auf selbstlose Weise im Forum einbringen.[/COLOR]

                              [COLOR=silver]btw: REAL PROGRAMMERs aren't afraid to use GOTOs![/COLOR]

                              [color=indigo]Etwas ernster, aber auch nicht weiter tragisch, sieht die Situation bei Software-Patenten aus. Software-Patente sind eine amerikanische Erfindung und stehen auf dem selben Blatt wie genveränderte Babynahrung, die im Supermarkt nicht mehr als solche gekennzeichnet werden soll, um die Hersteller nicht gegenüber denen natürlicher Produkte zu diskriminieren ...[/color]
                              (from here)

                              Kommentar

                              Lädt...
                              X