kostenloser Webspace werbefrei: lima-city


bestimmte zeilen aus einer .txt datei löschen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    a************n

    wie kann ich bestimmte zeilen aus einer txt datei löschen
    die zeilen sind wie folgt aufgebaut
    datum|||name|||nachricht
    ich hab momentan alles mit der datenbank geht auch einwandfrei nur das dauert alles zu lange.
    tja jetzt wollte ich wissen wie ich zeilen löschen kann in denen das datum älter als 10minuten ist.

    mfg andré
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Ich kenn mich da nicht wirklich aus, was bei dir jetzt eiigentlich passiert.
    Zeilen - in einer Textdatei oder in einer Datenbank???
    Ich versteh das Problem nicht ganz, etwas deutlicher wärs nicht schlecht.
    Wenn du das nach dem Muster in einer Textdatei stehen hast, wie willst du dann die 10min überprüfen? Dazu müsste doch ne Eintragszeit oder sowas mit drinstehn. Kann mir schwer vorstellen, wie man das anhand eines Datums überprüfen will...
  4. Autor dieses Themas

    a************n

    mit der datenbank ging alles einwandfrei bis auf das tempo das dauerte bis zu 8sekunden...

    deswegen wollte ich es auf eine textdatei umstellen
    und mit sql konnte man ja einfach mit
    delete from where time < //zeit vor 10min//

    tja jetzt war meine frage ob das auch mit einer textdatei geht
  5. t*****b

    Es würde auch mit Textdateien gehen, zum Beispiel in dem man die Zeilen einliest und die gewünschten Zeilen einer Variable ahängt und die, welche man nicht braucht auslässt. Dann das ganze nochmal neu speichern. Aber: Das ist langsamer als mit einer Datenbank zu arbeiten und falls dies mehrmals gleichzeitig ausgeführt wird, kann es zu Konflikten kommen. Wenn deine Queries 8 Sekunden zur Verarbeitung brauchen, sollteste du deine Datenbankarchitektur ändern. Datenbanken sind ja extra dazu gedacht, große Datenmengen einfach und schnell zu bearbeiten.
  6. Autor dieses Themas

    a************n

    naja offline braucht der request 0,23ms
    aber online (hier bei lima) 8sek
    ich lad die entscprechende "auslesedatei" mit ajax nach, ist nähmlich ein live chat..*stolz*
    aber da 8 sek recht viel sind kann man es nicht mehr 'live' nennen.
  7. ich denke mal es wird nicht an der datenbank liegen.
    falls du phped verwendest hast du da auch einen profiler mit drin der dir die einzelnen zeiten für die codeabschnitte ausgibt. falls nicht kannst du ja über die time funktion mal dir die einzelnen zeiten ausgeben lassen.
    siehe http://de.php.net/manual/de/function.microtime.php

    Grüßle
  8. b***************s

    Textzeilen auslesen, spltten, dass du deine Zeit in einem Array Wert ist den vergleichen wenn er in Ordnung ist an eine Variable anhängen mit '\n' für Zeilenumbruch und am Ende mit der Variable den Inhalt der Datei überschreiben.

  9. naja offline braucht der request 0,23ms
    aber online (hier bei lima) 8sek
    ich lad die entscprechende "auslesedatei" mit ajax nach, ist nähmlich ein live chat..*stolz*
    aber da 8 sek recht viel sind kann man es nicht mehr 'live' nennen.


    a) Hast du schon mal was von SQLite gehört? Aktuelle PHP-Versionen bieten dafür allein schon 3 Schnittstellen (sqlite-ext, PDO::SQLite, SQLite3) an. Das kommt ohne den für MySQL nötigen Server aus und ist (wenn ordentlich programmiert) meistens schneller.

    b) Die gemessene Zeit kann auch dadurch zu Stande kommen, dass auf den Lima-Servern mehr los ist, als auf deinem Test-System zu Hause. Die tatsächliche Zeit, die die CPU mit dem Ausführen deines Scriptes verbrät, dürfte wesentlich geringer als die 8 Sekunden sein.

    Andererseits halte ich das Simulieren von Chats über HTTP sowieso für Protokoll-Missbrauch, ob das jetzt mit Remote-Scripting ("AJAX") verschlimmbessert wird oder nicht, tut da nichts zur Sache. ;-) Der Client muss ständig "pollen", ob sich was geändert hat, weil HTTP eben "stateless" ist. Das erhöht nur die Serverlast. Du kannst dir sicher vorstellen, was das bedeutet, wenn mehrere solche Scripts auf dem Server laufen. Dann sinkt die verfügbare Zeit für die anderen Scripts. Und jetzt kannst du vielleicht auch erahnen, warum dann ein Script auf einem Lima-Server länger braucht als auf deinem Test-Server zu Hause.
  10. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!