PHP - Liveabfragen / Automatische aufgaben



  • Guten tag Leute. Ich habe im moment zwei kleine fragen.
    Ich probier grad mal PHP / html / mysql aus ( normalerweise
    programmiere ich software mittels C++ ) und habe da momentan
    zwei kleine Fragen. Erstens geht darum ob es möglich ist mittels
    PHP Livesachen zu machen? Ich meine das zum Beispiel zwei User
    eine Frage gestellt werden und sobald beide diese beantwort haben
    eine Auswertung und ausgabe erfolgt. Ergebnis hängt bei beiden
    AUCH von der Antwort des anderen ab. Wichtig wäre natürlich auch einen
    Timer dabei zu haben und ein Zeitlimit für die Antworten, da einer der
    beiden ja einfach Off gehen könnte oder sowas und dann nix mehr passieren
    würde. Wenn dies nicht mit PHP möglich ist, was ich fast befürchte,
    wäre es sehr nett wenn mir jemand ein Beispiel / Tipps dazu geben könnte wie ich sowas machen kann. am besten mittels Javascript ( benutze ich auch teilweise jedoch für kleinere Sachen und meine Kenntnisse sind da sehr beschränkt ). Das zweite Problem ist, das zb jeden tag um 7 uhr etwas gemacht werden soll wofür auch die DB benötigt wird. Ich denke mal das dafür Cronjobs benutzt werden jedoch habe ich keine Ahnung davon. Ein PHP script zu schreiben
    das das macht was gemacht werden soll ist natürlich kein problem,
    jedoch wie kann ich dieses dann mittels cronjob zum Beispiel jeden tag
    um 7 uhr ausführen und sicher gehen das es nur vom crontab ausgeführt wird ?
    Ich benutzte übrigens Parallels Confixx und habe darüber zugriff auf Crontab.

    mit freundlichen grüßen
    Hans



  • zu den Livesachen:
    nein. PHP wird nur auf dem Server ausgeführt. Der Cleint kann zwar die Seite neu laden, wo du ihm das Ergebnis übermitteln kannst, aber du hast keine Möglichkeit vom Server aus spezifische Clients dazu zu bringen, die seite von sich aus zu aktualisieren (ohne Userinteraktion).
    Mit Javascript könntest du immerhin in regelmäßigen Abständen neue Daten vom Server holen.
    Ideal wäre eine eigene Laufzeitumgebung innerhalb von HTML. Wie Flash, Silverlight oder Java. Damit kannst du die Verbindung offenhalten und munter Aktualisierungen in beide Richtungen verschicken

    zum cronjob:
    in etwa so muss deine tabelle aussehen:

    #!/usr/bin/php
    0 7 * * * /path/to/your/script.php > /dev/null
    

    oder so... kenn mich mit crontab nicht aus



  • Hallo,

    Confixx wie als auch Plesk nutzen sehr benutzerfreundliche Eingabemasken für CronTABs, weswegen du nichts weiter machen musst, als dein Script zu schreiben, es hochzuladen (ggf. geschützer Bereich) und dann die Felder auszufüllen. Da das Script täglich 7 Uhr ausgeführt werden soll, gibst du bei Jahr, Monat, Tag jeweils "*" , bei Stunde "7" und bei Minute/Sekunde jeweils "0" ein. Schau danach ab und zu im Log ob das Script Fehler verursacht. Der CronTAB hat außer der DB keine weitere Ausgabemöglichkeit.

    Alles andere lässt sich recht gut mittels AJAX lösen.

    VlG



  • RandomAccess85 schrieb:

    Hallo,

    Confixx wie als auch Plesk nutzen sehr benutzerfreundliche Eingabemasken für CronTABs, weswegen du nichts weiter machen musst, als dein Script zu schreiben, es hochzuladen (ggf. geschützer Bereich) und dann die Felder auszufüllen. Da das Script täglich 7 Uhr ausgeführt werden soll, gibst du bei Jahr, Monat, Tag jeweils "*" , bei Stunde "7" und bei Minute/Sekunde jeweils "0" ein. Schau danach ab und zu im Log ob das Script Fehler verursacht. Der CronTAB hat außer der DB keine weitere Ausgabemöglichkeit.

    Alles andere lässt sich recht gut mittels AJAX lösen.

    VlG

    Confixx? Plesk? Wirs sind Profil sowas brauchen wir nicht!! 😃 :schland:
    Ne is ja irgendwo ok hehe



  • zwutz schrieb:

    zu den Livesachen:
    nein. PHP wird nur auf dem Server ausgeführt. Der Cleint kann zwar die Seite neu laden, wo du ihm das Ergebnis übermitteln kannst, aber du hast keine Möglichkeit vom Server aus spezifische Clients dazu zu bringen, die seite von sich aus zu aktualisieren (ohne Userinteraktion).
    Mit Javascript könntest du immerhin in regelmäßigen Abständen neue Daten vom Server holen.
    Ideal wäre eine eigene Laufzeitumgebung innerhalb von HTML. Wie Flash, Silverlight oder Java. Damit kannst du die Verbindung offenhalten und munter Aktualisierungen in beide Richtungen verschicken

    zum cronjob:
    in etwa so muss deine tabelle aussehen:

    #!/usr/bin/php
    0 7 * * * /path/to/your/script.php > /dev/null
    

    oder so... kenn mich mit crontab nicht aus

    Erstmal danke für deine Antwort und den anderen danke ich natürlich
    auch für die Hilfe / Tipps. Wie ist denn Flash so aufgebaut ( syntax ) ?
    Java naja hmm weiss ja nicht aber das alles ist nur ein kleines
    projekt aus langweile da ich mir einfach mal ein bisl Webzeugs anschauen wollte jedoch hatte ich nicht vor eine neue Programmiersprache zu lernen ^^
    PHP macht mir alles recht leicht da die Syntax der von C++
    sehr stark ähnelt ^^ Womit würd ich denn am schnellsten zu meinem Ziel kommen ?
    Nebenbei hatte ich auch nicht vor ein Standallone script dafür zu haben
    sondern auch dabei auf die DB zu zugreifen mittels php am besten.
    Im Notfall werd ich wohl alle X Sekunden mittels Javascript
    eine Funktion aufrufen die dann checkt ob schon eine Antwort excistiert ^^

    Nochmal zum Cronjob:

    Das mit der Zeit einstellen ist natürlich kein problem.
    Nur ist das jetzt folgendermaßen aufgebaut in confix:

    Minute Stunde Tag im Monat Monat Wochentag Befehl
    Wäre nett wenn mir jemand den Befehl und eventuell ein Beispiel
    dafür posten würde um ein PHP script auszuführen. Vielen dank nochmal 🙂



  • Hallo,

    wie gesagt: AJAX

    zum Thema Confixx: Als Script-Pfad musst du lediglich den PHP-Pfad und den Pfad zum Script angeben, zum Beispiel:
    /etc/apache/php /var/www/domains/deinedomain/pfad/zum/script/deinscript.php

    VlG



  • RandomAccess85 schrieb:

    Hallo,

    wie gesagt: AJAX

    zum Thema Confixx: Als Script-Pfad musst du lediglich den PHP-Pfad und den Pfad zum Script angeben, zum Beispiel:
    /etc/apache/php /var/www/domains/deinedomain/pfad/zum/script/deinscript.php

    VlG

    Alles klar vielen dank. Werde mir AJAX mal anschaun 🙂


Log in to reply