[Variablen] Probleme mit Schreiben von Variable

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

  • [Variablen] Probleme mit Schreiben von Variable

    Hallo Community,
    Ich bin nun seit einiger Zeit dabei, mich im Internet Präsent zu halten.
    Anfang 2004 habe ich meine Erste Homepage gehabt, damals ein Blog von Oyla.de, mittlerweile mit Homepage Systemen, die ich mühsam mit Plugins erweitere.

    Da ich bis jetzt meine 100% Selber programmierten Seiten aber immer im Editor bearbeiten musste, sprich Datei öffnen Queltext bearbeiten, habe ich mir doch mal gedacht, ich Programmiere ein Admin Menu.

    Dazu habe ich mir vorerst als Ziel Gesetzt, durch einen Schlichen PHP und HTML aufbau, die Header Funktion <title> zu bearbeiten.
    Dazu habe ich ein HTML Formular verwendet, und eine PHP Variablen übernahme.
    Leider funktioniert es nicht so wie ich es haben will.
    Hier Meine Quelltexte:

    Index.php
    Code:
    <html>
    <head>
    <title>
    <?php
    include("title.txt");
    ?>
    </title>
    </head>
    <body>
    <a href="Admin.php">Admin</a>
    </body>
    </html>

    title.txt + CHMOD 777
    Code:
    Titel der Homepage

    Admin.php
    Code:
    <html>
    <head>
    <title>Admin</title>
    </head>
    <body>
    Jetztige Überschrift:<br>
    <textarea cols="35" rows="1" name="textarea13">
    <?php
    include("titel.txt");
    ?></textarea><br><br>
    Neue &Uuml;berschrift:<br>
    <?php
    if($_POST['set_title'])
    {
       $title = $_POST['title'];
    $datei = fopen("titel.txt","r+");
    fwrite($title);
    fclose($title);
    rewind($title);
    }
    
    <form name="title_form" action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
    <input type="text" name="title" size="40" value="<?php echo file_get_contents("titel.txt"); ?>" />
    <input type="submit" name="set_title" value="Set new title" />
    </form>
    </body>
    </html>
    Kann mir jemand die Lösung sagen, aber auch erklären wie und wo mein Fehler liegt.
    Mein Ziel ist es ja, die Sprachen zu lernen und Verstehen, und nicht anderer Leute Quelltexte zu benutzen.
    Vielen Dank, Lennie!
    Webdesign und Webentwicklung - Plunix.de

  • #2
    Denk mal nach was Du hier machst:

    $title = $_POST['title'];
    $datei = fopen("titel.txt","r+");
    fwrite($title);
    fclose($title);
    rewind($title);

    und dann rtfm zu den verwendeten Funktionen
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      Also erstmal lass ich mir aus dem Form eine Variable erzeugen.
      Dann öffne ich dir Datei titel.txt gebe an dass diese Datei gelesen udn beschrieben wird.
      Dann Beschreibe ich dite Datei, und schließe die Datei wieder.
      Anschließend füge ich noch hinzu, dass diese Datei komplett neu beschrieben werden soll, und nicht der Neue Titel hinter den alten geschrieben wird.

      Was du mit rtfm meinst, weiß ich leider nicht.
      Kannst du mir diesen Begriff erklären?
      Webdesign und Webentwicklung - Plunix.de

      Kommentar


      • #4
        rtfm = read the fucking manual

        Du mußt beim Schreiben, "zurückspulen" und Schließen der Datei,
        die Variable angeben die Du beim Öffnen bekommen hast.

        Kommentar


        • #5
          Ah Danke,
          Hier herscht ja eine Umgangssprache .
          Habe glaube ich verstanden.
          Ich muss die Datei schließen die ich geöffnet habe.

          Code:
          <?php
          $datei = fopen("titel.txt","r+");
          fwrite($title);
          fclose("titel.txt");
          rewind($title);
          ?>
          Webdesign und Webentwicklung - Plunix.de

          Kommentar


          • #6
            Du hast nichts verstanden.
            lies im manual nach welche parameter Deine funktionen erwarten
            Beantworte nie Threads mit mehr als 15 followups...
            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

            Kommentar


            • #7
              ja - die Umgangssprache bei Programmierern ist hart.
              Sei froh daß Du das Handbuch nicht an den Kopf geworfen
              bekommen hast...

              $datei = fopen(.......

              $datei mußt Du dann angeben wenn Du mit
              den Dateifunktionen arbeitest.

              also z.B. fclose ($datei);

              Das gilt AUCH für fwrite usw.

              steht aber wirklichmit Beispielen z.B. hier:

              http://www.php4-forum.de/datei_funktionen.htm

              Kommentar


              • #8
                <?php
                if($_POST['set_title'])
                {
                $title = $_POST['title'];
                $fp = fopen("title.txt", "r+");
                fwrite($title);
                fclose("title.txt");
                rewind($title);
                }

                <form name="title_form" action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
                <input type="text" name="title" size="40" value="<?php echo file_get_contents("title.txt"); ?>" />
                <input type="submit" name="set_title" value="Set new title" />
                </form>


                ist das so besser?
                so die großen php künnste habe ich nicht.
                Gebe mir Mühe.
                Also mittlerweile zeigt mir der Browser keinen Fehler mer im oberen teil sondern in dem Formular. Könnt ihr da noch nen fehler entdecken?
                Webdesign und Webentwicklung - Plunix.de

                Kommentar


                • #9
                  stop... hab nochwas vergessen!!! moment

                  <?php
                  if($_POST['set_title'])
                  {
                  $title = $_POST['title'];
                  $fp = fopen("title.txt", "r+");
                  fwrite($title);
                  fclose("title.txt");
                  rewind($title);
                  }

                  <form name="title_form" action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
                  <input type="text" name="title" size="40" value="<?php echo file_get_contents("title.txt"); ?>" />
                  <input type="submit" name="set_title" value="Set new title" />
                  </form>


                  also erstens habe ich vergessen php zu schließen.
                  2 habe ich mir deine Url seite nochmal durchgelesen und bin auf folgenden neuen stand gekommen:

                  $fp = fopen("title.txt", "r+");
                  fwrite($fp, "$title");
                  fclose($fp, "title.txt");
                  rewind($fp "$title");
                  }

                  EDIT//

                  Nun zeigt mir Der Browser schon mal die Seite wenn ichg öffne.
                  Aber er zeigt mir Einen Fehler beim Rewind an, wenn ich absende!
                  Zuletzt geändert von Lennie; 14.05.2006, 22:06.
                  Webdesign und Webentwicklung - Plunix.de

                  Kommentar


                  • #10
                    PHP-Code:
                    if($_POST['set_title'])
                    {
                    $title $_POST['title'];
                    $fp fopen("title.txt""r+");
                    fwrite($fp$title);
                    fclose($fp);
                    // rewind($fp); kannst weglassen

                    // kannst ja auch keine Datei zurückspulen wenn sie schon geschlossen ist.


                    mühsam ernährt sich das Eichhörnchen
                    Zuletzt geändert von Koala; 14.05.2006, 22:08.

                    Kommentar


                    • #11
                      kann ich weglassen?
                      bleibt dann nicht der alte title bestehen?
                      danke!
                      Webdesign und Webentwicklung - Plunix.de

                      Kommentar


                      • #12
                        Hallo.
                        Ich habe ein weiteres Problem.
                        Nun hat zwar dieses script geklappt.
                        Doch ich habe es 2 weitere male auf der selben Admin Seite eingebaut.
                        Dafür aber die zusatz infos geändert:
                        es schaut jetzt folgender maßen aus in der admin datei:
                        Code:
                        Homepage Titel:<br>
                        <?php
                        if($_POST['set_title'])
                        {
                           $title = $_POST['title'];
                        $fp = fopen("title.txt", "r+");
                        fwrite($fp, "$title");
                        fclose($fp);
                        }
                        ?>
                        <form name="title_form" action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
                        <input type="text" name="title" size="40" value="<?php echo file_get_contents("title.txt"); ?>" />
                        <input type="submit" name="set_title" value="Ändern" />
                        </form>
                        <br>
                        <br>
                        <br>
                        Homepage Untertitel:<br>
                        <?php
                        if($_POST['set_title2'])
                        {
                           $title = $_POST['title2'];
                        $fp = fopen("title2.txt", "r+");
                        fwrite($fp, "$title2");
                        fclose($fp);
                        }
                        ?>
                        <form name="title_form" action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
                        <input type="text" name="title2" size="40" value="<?php echo file_get_contents("title2.txt"); ?>" />
                        <input type="submit" name="set_title2" value="Ändern" />
                        </form>
                        <br>
                        <br>
                        <br>
                        Counterstand:<br>
                        <?php
                        if($_POST['set_counter'])
                        {
                           $title = $_POST['counter'];
                        $fp = fopen("counter.txt", "r+");
                        fwrite($fp, "$counter");
                        fclose($fp);
                        }
                        ?>
                        <form name="counter_form" action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
                        <input type="text" name="counter" size="40" value="<?php echo file_get_contents("counter.txt"); ?>" />
                        <input type="submit" name="set_counter" value="Ändern" />
                        </form>
                        Die CHMOD werte sind alle auf richtigem Modus (CHMOD 777).
                        Das Erste Admin Script funktioniert, das 2. und 3. Sendet zwar etwas ab, aber nachdem der Browser neuläd, durch das Value, erscheint wieder der alte text, im eingabe fesnter, und auch die index datei bleibt ungeändert.
                        weiß jemand antwort?
                        Meine Vermutung liegt darin, das ich keine 2. variable $fp setzetn darf, habe dies aber noch nicht ausprobiert.
                        Webdesign und Webentwicklung - Plunix.de

                        Kommentar


                        • #13
                          das mit der Variable $fp solltest mal testen.

                          Ansonsten würd ich an Deiner Stelle mit Formularen anfangen
                          und dann mit Session, Cookies und db-Abfragen weitermachen.

                          Ein Merkmal von php ist ja der Datenaustausch von
                          Client und Server und das insbesondere in der Zusammenarbeit
                          mit Datenbanken.

                          Datenbank hört sich erst mal langweilig an, aber da lassen sich
                          schon tolle Sachen machen: Gästebücher, Foren, Newsreader,
                          Bildergallerien, Webshops usw.

                          Kommentar


                          • #14
                            Hi.

                            Ja wollte mich anch und nach auch in MySQL hineinarbeiten.
                            Aber wo gibt es denn Ein Ordentliches MySQL Turitorial?
                            Webdesign und Webentwicklung - Plunix.de

                            Kommentar


                            • #15
                              dieses Tutorial find ich super,
                              kompakt, gut erklärt und reicht für den Einstieg:

                              http://tut.php-q.net/

                              Kommentar

                              Lädt...
                              X