kostenloser Webspace werbefrei: lima-city


Warum geht das nicht?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    my-selfmade

    Kostenloser Webspace von my-selfmade, auf Homepage erstellen warten

    my-selfmade hat kostenlosen Webspace.

    Hi, ich habe einen kleinen Code geschrieben, der eigendlich Wörter wie in \"Karteikarten\" eintragen soll. Die Zahl soll sich eigendlich immer um eines erhöhen, das geschiet aber nicht, stattdessen wird das 1. Textdokument überschrieben. Weis jemand von euch warum? Hier ist der Link zum Code:
    http://my-selfmade.lima-city.de/im_forum/schleife.txt
    Ich weis, dass der Code nicht gut aussieht, und sehr anfängerhaft ist, und dass es schon viele solche Programme gibt, die das sicher besser können, aber ich wollte mir selbst sowas schreiben.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. m******s

    Hm, also mal eine Auflistung, was suboptimal ist (wieder nur als wohlmeinende Kritik gemeint):

    - Statt $k = \"j\" solltest du einfach $k = true benutzen. In der if-Abfrage würdest du dann statt if(\"j\" == $k) schreiben: if($k)
    - bei
    $x = 001;
        $y = 001

    hast du ein Semikolon vergessen und brauchst auch die Null nicht, also ändern in
    $x = 1;
        $y = 1;

    - was zu deinen Fehler führt ist:
    while (100 < $x)

    Da du gerade erst zwei Zeilen vorher $x auf 1 gesetzt hast, wird die Schleife nie durchlaufen und du hast immer $x = 1.
    - Ausserdem ist isset für Variablen gedacht, also isset(\"bla\" ) ist IMMER true. Was du suchst ist
    is_file(\"karten/$x.txt)

    - Weiterhin bietet es sich auch hier an, statt
    while (100 < $x)


    und

    if(!isset(\"karten/\".$x.\".txt\"))
    {
            $x = 10000000;
    }


    Lieber folgendes Konstrukt zu verwenden:

    while(true)


    und

    if(!is_file(\"karten/$x.txt\"))
    {
            break;
    }


    - Die flock()-Anweisungen solltest du in diesem Fall weglassen können, da das eh nicht immer funktioniert, und so gewalti sollte die Benutzung des Skriptes nicht sien, dass es da zu Konflikten kommen kann...

    Also, abgesehen von den führenden Nullen in $x und $y und dem flock() sind das alles kritische Probleme deines Codes ;)


    Beitrag geändert: 24.7.2008 8:11:57 von merovius
  4. Autor dieses Themas

    my-selfmade

    Kostenloser Webspace von my-selfmade, auf Homepage erstellen warten

    my-selfmade hat kostenlosen Webspace.

    Komisch, mein PHP-Dokument ist irgendwie anders, als mein Text-Dokument, obwol ich das nur kopiert habe. Ich habe jetzt nocheinmal alles kopüiert, es kommt aber immernochnicht das, was ich hinkopiert habe. Das mit dem \';\' trifft in meinem Code nicht zu, sondern nur in dem Textdokument. Warum verstehe ich nicht. Genauso wie die anderen Dinge, die du angesprochen hast, bis auf das, dass ich kein true oder false verwendet habe, das ist wirklich so in meinem Code.
  5. m******s

    Also, ich kann nur von dem ausgehen, was ich habe, kannst mir das aber gerne in einer PN schicken...

    [edit] Also, wenn bie dir nicht while( 100 < $x) und if(!isset(\"karten\".$x.\".txt\" )) mehr drin steht, wüsst ich auch nicht, woran das liegt...

    Beitrag geändert: 24.7.2008 8:33:49 von merovius
  6. Autor dieses Themas

    my-selfmade

    Kostenloser Webspace von my-selfmade, auf Homepage erstellen warten

    my-selfmade hat kostenlosen Webspace.

    OK, ich schicke dir den Code per PN. Oder wird da auch einiges rausgefiltert, wie wenn man einen code ins Forum stellt?
  7. m******s

    okay, also isset(\"Karte\".$x.\".txt\" ) hast du beseitigt, aber while(100 < $x) hast du immer noch drin. Nochmal, du setzt $x = 1. while(100 < 1) wird NIE ausgeführt. D.h. $x bleibt immer 1, und es wird immer die erste Datei überschrieben...

    Naja, ausserdem hast du immer noch recht seltsame Techniken.... Aber das ist dein Problem... ;)


    Beitrag geändert: 24.7.2008 18:58:44 von merovius
  8. Autor dieses Themas

    my-selfmade

    Kostenloser Webspace von my-selfmade, auf Homepage erstellen warten

    my-selfmade hat kostenlosen Webspace.

    OK, Danke! Ich setze den Pfeil anderstru. Und dass habe ich seltsame Techniken habe habe ich schon oben geschrieben, und weis ich auch.



    Edit: Leider werden jetzt 100 Dateie mit dem Deutschen, und eine mit dem englischen erstellt. Jetzt muss ich noch wissen, wie ich es verhindern kann, dass 101 Dateien erstellt werden, dann dürfte dieser Teil fertg sein.

    Beitrag geändert: 25.7.2008 7:58:17 von my-selfmade
  9. t*****b

    Wie wäre es denn mit einer Datenbank, denn dafür sind diese gedacht. Ist a) nicht so kompliziert, b) effizienter und c) ab einer gewissen Anzahl der Datensätze/Dateien schneller als mit Textdateien zu arbeiten.
  10. Autor dieses Themas

    my-selfmade

    Kostenloser Webspace von my-selfmade, auf Homepage erstellen warten

    my-selfmade hat kostenlosen Webspace.

    Ich richte mir gerade eine Datenbank ein. Allerdings kann ich och fast nichts mit mySQL machen, und ich möchte euch ja auch nicht dauernd mit solchen Fragen nerven.
  11. 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!