Chris Weber: Serverseitige Dateihandles und gleichzeitige Zugriffe

Hallo mal wieder,

mein Problem ist folgendes:  Ich habe auf einem Server HTML-Dateien mit Formularen, die durch ein CGI-Script ausgewertet werden.  Die Daten, die dieses Script aufnimmt werden dann (evtl. formatiert) in einer Textdatei gespeichert (deswegen auch Perl ;-)).  Was passiert aber, wenn mehrere Benutzer gleichzeitig Formularinhalte an das CGI-Script senden?  Gibt das dann irgendeinen Fehler?

Übrigens:  Wie kann ich es einstellen, daß diese Textdatei (oder vielleicht besser:  die Inhalte der Datei) mir regelmäßig als Mail geschickt wird?  Geht das überhaupt?

Danke

  1. Hi chris..

    Wenn du verhindern willst kannst du mit fock() ein file für einen zweiten zugriff sperren...

    Für das zumailen empfehle ich dir eine Mail-Funktion in dein Perlprogramm einzubauen, so dass du jeden neuen Eintrag automatisch zugesannt bekommst!

    Cu

    Anonymous

  2. hi!

    mein Problem ist folgendes:  Ich habe auf einem Server HTML-Dateien mit Formularen, die
    durch ein CGI-Script ausgewertet werden.  Die Daten, die dieses Script aufnimmt werden
    dann (evtl. formatiert) in einer Textdatei gespeichert (deswegen auch Perl ;-)).  Was passiert
    aber, wenn mehrere Benutzer gleichzeitig Formularinhalte an das CGI-Script senden?  Gibt
    das dann irgendeinen Fehler?

    Wenn zwei Prozesse gleichzeitig auf die Datei zugreifen, kann es zum Datenverlust kommen. Da gibt es mehrere Möglichkeiten. Entweder du verwendest flock oder du legst eine Datei nur für dein Skript an. Wenn diese existiert, darf das Skript nicht schreibend auf die Datei zugreifen.

    Übrigens:  Wie kann ich es einstellen, daß diese Textdatei (oder vielleicht besser:  die
    Inhalte der Datei) mir regelmäßig als Mail geschickt wird?  Geht das überhaupt?

    Mit Perl und Sendmail kannst du ohne Probleme Mails versenden (siehe SELFHTML). Um das regelmäßig zu machen, würde ich crontab/cron vorschlagen. Sollte wohl auf dem Server installiert sein, wenn er unter Linux/Unix läuft. Dann brauchst du nur noch Telnet-Zugriff.

    bye, Frank!

    1. Hallo Frank,

      Mit Perl und Sendmail kannst du ohne Probleme Mails versenden (siehe SELFHTML). Um das regelmäßig zu machen, würde ich crontab/cron vorschlagen. Sollte wohl auf dem Server installiert sein, wenn er unter Linux/Unix läuft. Dann brauchst du nur noch Telnet-Zugriff.

      Und wie benutze ich diesen Telnet Zugriff?

      1. hi!

        Mit Perl und Sendmail kannst du ohne Probleme Mails versenden (siehe SELFHTML).
        Um das regelmäßig zu machen, würde ich crontab/cron vorschlagen. Sollte wohl auf dem
        Server installiert sein, wenn er unter Linux/Unix läuft. Dann brauchst du nur noch
        Telnet-Zugriff.
        Und wie benutze ich diesen Telnet Zugriff?

        Mit einem Telnet-Client.

        bye, Frank!