php script im Hintergrund

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

  • php script im Hintergrund

    bevor sich manch einer hier auf den Schlips getreten fühlt ...

    Ich suche nach einer möglichkeit mein php script welches in der Datei script.php sich befindet und den mit dem Parameter $_POST['variable'] 2 Minuten arbeitet, sobald der benutzer auf der Seite los.php die entsprechende Variable mit einem Formular losschickt.

    2 Minuten soll der Benutzer aber nicht warten... das script in der script.php sollte nach dem POST anfangen zu arbeiten und der Benutzer soll weiterarbeiten können.

    Klar werden jetzt viele sagen Befehl : exec !!!

    Ich habe mir die Funtion mal angeschaut bin da aber nicht schlau daraus geworden... wo ist der Teil in der funktion in welcher ich die $_POST['variable'] an die Datei übergebe ?

    habe mir im unendlichen Internet schon so manche Funktionen angeschaut jedoch werde ich nicht schlau draus hoffe ihr könnt mir eventuell helfen das ganze zu verstehen.

    Ach übrigens :
    1. die script.php hat keine ausgabe und braucht auch keine.
    2. Es ist legal
    3. ich nutze xampp
    4. es soll nur local ausgeführt werden
    5. keine batch oder ähnliche scripte werden zusätlich gebraucht.

    Hoffe meine Angabe helfen euch beim verständniss und denke ihr könnt mir, wie auch die letzten male, schnell helfen.

    Danke im vorraus..

  • #2
    Hm ... ich weiß nicht, ob ich richtig liege. Aber wenn etwas asynchron ausgeführt werden soll, wäre doch wohl eher AJAX der richtige Weg, oder?

    Zumindest hätte ich den Code so angestoßen. Das Formular wird abgeschickt. Eine Javascript funktion stößt das PHP Script an und der User kann ohne Probleme auf der Seite weiter arbeiten.

    Aber wieso läuft das Scipt nur 2 Minuten? Was passiert denn da?
    MM Newmedia | MeinBlog

    Kommentar


    • #3
      AJAX ist die Lösung, wenn der User nicht warten muss.

      Kommentar


      • #4
        Da der Benutzer offensichtlich nicht unmittelbar auf das Ergebnis vom Hintergrundscript angewiesen ist, würde ich die Daten in einer Tabelle hinterlegen und was auch immer von einem Cron Job erledigen lassen.
        [FONT="Helvetica"]twitter.com/unset[/FONT]

        Shitstorm Podcast – Wöchentliches Auskotzen

        Kommentar


        • #5
          cronjob fällt aus weil das script auf Benutzeraktion ausgeführt werden soll und nicht regelmäßig wie bei einem Cron.

          Ajax wäre mit sicherheit auch eine möglichkeit jedoch nicht die, welche ich erwarte bzw. mit welcher ich mich auskenne.

          gehe ich denn zumindestens richtig in die Richtung das ich mein Problem nicht mit exec lösen kann ?

          Kommentar


          • #6
            Der Cron Job soll die Aktionen ja auch nur ausführen, wenn entsprechende Einträge vorhanden sind. Job startet, prüft was er zu tun hat und ist beendet. Wenn er nichts zu tun hat startet er, macht nix und ist auch schon wieder zu ende.
            [FONT="Helvetica"]twitter.com/unset[/FONT]

            Shitstorm Podcast – Wöchentliches Auskotzen

            Kommentar


            • #7
              Ein Cron Job ist natürlich perfekt. Der User soll ohnehin nicht die 2 Minuten abwarten und das Script gibt auch nichts zurück, was relevant für den User wäre. Wäre auf jeden Fall die einfachste Möglichkeit.

              Also einfach die Daten, die der User über das Formular absendet irgendwo speichern und den Rest vom Cron Job erledigen lassen.
              MM Newmedia | MeinBlog

              Kommentar


              • #8
                Original geschrieben von Postaria
                Ajax wäre mit sicherheit auch eine möglichkeit jedoch nicht die, welche ich erwarte bzw. mit welcher ich mich auskenne.
                Das ist ja kein Grund, es nicht zu lernen, schau doch mal bei unserem Obermufti rein.
                Ich denke, das ist hier wirklich die vernünftigste Lösung
                Gruss
                H2O

                Kommentar


                • #9
                  Hallo H2O
                  ja natürlich bin ich nicht abgeneigt etwas zu lernen.

                  jedoch habe ich zur Zeit nicht die Zeit mich in ein neues System mich einzuarbeiten... und als System bezeichne ich Ajax.

                  natürlich kann mir jetzt jeder sagen ist doch nur ein abkömling von javascript aber da erwidere ich nur ein leichtes "ich bin bis jetzt ganz ohne Javascript ausgekommen und versuche es auch weiterhin."

                  brauch also eine reine php lösung ohne cronjobs.

                  Kommentar


                  • #10
                    Cronjob ist das richtige!
                    Alternativ: Einen eigenen Daemon schreiben.

                    Bei allem andern fällst du wahrscheinlich in Timeouts.
                    Wir werden alle sterben

                    Kommentar


                    • #11
                      Eine PHP-Lösung ohne Cronjobs und ohne Javascript (und ohne frames ) gibt es wohl nicht.

                      Kommentar


                      • #12
                        Doch doch, einen Daemon schreiben!
                        Auch wenn PHP nicht optimal für diesen Zweck ist.
                        Wir werden alle sterben

                        Kommentar


                        • #13
                          hmmm bin jetzt denke ich doch auf den Trichter von Ajax gekommen
                          versuche mich da mal an einer Lösung.
                          mal schauen ob es was wird. Eventuell brauche ich da auch noch beistand von euch.

                          übrigens es ist xampp nicht lampp oder desweiteren
                          sprich Windows = !=Cronjobs != Daemons etc.

                          was natürlich nichts gegen Tasks spricht jedoch:
                          Leutz überlegt euch mal eines::: SOVIEL aufwand für eine einfache Aufgabe ?

                          Naja ich melde mich dann gleich wenn ich mich in Ajax eingelesen habe.

                          Kommentar


                          • #14
                            Du kannst auf Windows doch einen geplanten Task starten...
                            Wo ist da der Aufwand?
                            Beantworte nie Threads mit mehr als 15 followups...
                            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                            Kommentar


                            • #15
                              Original geschrieben von Postaria
                              übrigens es ist xampp nicht lampp oder desweiteren
                              sprich Windows = !=Cronjobs != Daemons etc.
                              xammp gibt es auch für nicht-Windows systeme. Und all den Kram gibt es auch unter Windows - teilweise heißt es anders, teilweise kann man sich Portierungen besorgen.

                              Und: Soviel Aufwand für so ein kleines Problem? In der Tat! Du hast nicht geschrieben, was dein Script da zwei Minuten rummacht. Ich kenne Scripte, die erstellen 20.000 Rechnungen in kürzerer Zeit.
                              [FONT="Helvetica"]twitter.com/unset[/FONT]

                              Shitstorm Podcast – Wöchentliches Auskotzen

                              Kommentar

                              Lädt...
                              X