Datei ändern per Script

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

  • #16
    Ich weiß ja, ich arbeite ja daran nur mußte ich ja erstmal an die Inhalte überhaupt kommen. Ich zerlege jetzt die Variable nach Umrüchen und versuche aus den Anführungszeichen die Werte zu holen. Kann aber etwas dauern.

    Oder hast du eine bessere Idee wenn das Zeilenweise auslesen nur Ziffern ergibt? Ich mußte das halt binär auslesen...
    Tock (,tock,tock)

    Kommentar


    • #17
      Kein blass dunst (ausser der Meiner Zigaretten)

      [Editiert von Wotan am 31-01-2002 um 10:05]
      *winks*
      Gilbert
      ------------------------------------------------
      Hilfe für eine Vielzahl von Problemen!!!
      http://www.1st-rootserver.de/

      Kommentar


      • #18
        Ich schaff das schon :-)
        Tock (,tock,tock)

        Kommentar


        • #19
          ok, soweit so gut. Jetzt noch value und name splitten, dann haben wir's. *grins*

          <?php
          $datei = fopen("config.inc.php","r+");
          $inhalt= fread($datei,10000);
          $i=1;
          $temp = $inhalt;
          echo "<form>";
          while($temp != ""):
          // das $ finden -------------------------------------
          $x = strpos($temp,"$");
          // bis zum $ alle zeichen nehmen --------------------
          $weg = substr($temp,0,$x);
          if ($temp[$i] == ""):
          $temp="";
          endif;
          // bis zum $ alle zeichen entfernen -----------------
          $temp = str_replace($weg, "" , $temp);
          // das ; finden -------------------------------------
          $bis = strpos($temp,";");
          $bis = $bis+1;
          // von $ bis zum ; alle zeichen nehmen --------------
          $teile[$i] = substr($temp,0,$bis);
          // Temp herstellen ----------------------------------
          $temp = str_replace($teile[$i], "" , $temp);
          echo "<input type='Text' value='".$teile[$i]."'>";
          $i++;
          endwhile;
          ?>
          </form>

          Ich muss kurz mal eine rauchen. Bis später.

          [Editiert von Tock am 30-01-2002 um 13:51]
          Tock (,tock,tock)

          Kommentar


          • #20
            Jetzt kommen wir der Sache schon näher.

            Nur sollte die Ausgabe so sein:
            Code:
            Title = <input type='text' name='title' value='$title'>
            Das ganze soll zum Schluß in einer Tabelle eingebaut werden der übersichthalber.

            Unter normalen Umständen würde ich es so machen:
            Code:
            include("config.inc.php");
            Print "<table>";
            print "<form>";
            print "<tr>";
            print "<td>Title</td>";
            print "<td><input type='text' name='title' value='$title'></td></tr>";
            
            ...
            
            print "<tr><td><input type='submit' name='aendern' Value='Ändern'></td><td></td></TR>";
            print "</table>";
            print "</form>";
            Nur weiß ich nicht wenn ich es so mach wie ich dann die Datei config.inc.php geändert und gespeichert bekomme.
            *winks*
            Gilbert
            ------------------------------------------------
            Hilfe für eine Vielzahl von Problemen!!!
            http://www.1st-rootserver.de/

            Kommentar


            • #21
              So, das Eintragen mach ich noch, aber das Design machste selbst!

              <?php
              $datei = fopen("config.inc.php","r+");
              $inhalt= fread($datei,10000);
              $i=1;
              $temp = $inhalt;
              echo "<form action='generieren.php' method='post'>";
              while($temp != ""):
              // das $ finden -------------------------------------
              $x = strpos($temp,"$");
              // bis zum $ alle zeichen nehmen --------------------
              $weg = substr($temp,0,$x);
              if ($temp[$i] == ""):
              $temp="";
              endif;
              // bis zum $ alle zeichen entfernen -----------------
              $temp = str_replace($weg, "" , $temp);
              // das ; finden -------------------------------------
              $bis = strpos($temp,";");
              $bis = $bis+1;
              // von $ bis zum ; alle zeichen nehmen --------------
              $teile[$i] = substr($temp,0,$bis);
              // Temp herstellen ----------------------------------
              $temp = str_replace($teile[$i], "" , $temp);
              $name = str_replace("$", "" ,$teile[$i]);
              $namebis = strpos($name,"=");
              $name = substr($name,0,$namebis);
              $loeschen = "$".$name."=";
              $val = str_replace($loeschen, "" ,$teile[$i]);
              $laenge = strlen($val);
              $bis = $laenge - 4;
              $val = substr($val,2,$bis);
              echo $name."<input type='Text' name='".$name."' value='".$val."'><br>";
              $i++;
              endwhile;
              ?>
              <input type="Submit">
              </form>
              Tock (,tock,tock)

              Kommentar


              • #22
                Gut das ist es, nur kommt bei mir in der letzten Zeile ein leeres Forumalfeld. Wie krieg ich das weg? Und wie speicher ich jetzt die Änderungen in der config.inc.php?

                [Editiert von Wotan am 30-01-2002 um 14:19]
                *winks*
                Gilbert
                ------------------------------------------------
                Hilfe für eine Vielzahl von Problemen!!!
                http://www.1st-rootserver.de/

                Kommentar


                • #23
                  Kann wer weiter helfen???
                  *winks*
                  Gilbert
                  ------------------------------------------------
                  Hilfe für eine Vielzahl von Problemen!!!
                  http://www.1st-rootserver.de/

                  Kommentar


                  • #24
                    Ich habe mich mit diesem Thread nicht viel beschäftigt, aber vielleicht hilft es Dir.

                    Im u.a. Beispiel soll der Inhalt, die Variablen, der "include.php" über ein Formular geändert werden können.
                    include.php
                    Code:
                    <?php
                    $variable1 ='testetst';
                    $variable2 = 'whhhhh';
                    $variable3 = '9-16';
                    $variable4 ='#990000';
                    ?>
                    Nachfolgendes Skript liest alle Inhalte "include.php" in einen Array. Im Zweiten Schritt wird "include.php" mit den Inhalten des Array und den übergebenen Formularvariablen neu zusammengebaut. Das Formular dazu kannst Du Dir sicher selber basteln.
                    Code:
                    <?php
                    $file = "include.php";
                    @$fp = fopen($file,"r"); // File zum Lesen öffnen 
                    if (!$fp) {
                        print "File $file doesn't exist<br>\n";
                    } else {
                        $fileok = "ok";
                        while (!feof($fp)) { 
                            $zeilen[] = fgets($fp, 4096); // File zeilenweise in einen Array einlesen
                        }
                    }
                    @fclose($fp);
                    if ($fileok == "ok") {
                        $fp = fopen($file,"w"); // File zum Schreiben öffnen
                        for ($i=0;$i<sizeof($zeilen);$i++) {  // Array lesen und Inhalte in File schreiben
                            $zeile = $zeilen[$i];
                            if (isset($form_variable1) && $form_variable1 != "") { // Variable $form_variable1 gesetzt und Inhalt?
                                if (strpos($zeilen[$i],"variable1 =") == true) { // String 'variable1 =' in Zeile vorhanden?
                                    $zeile = "$"."variable1 = '$form_variable1';\n"; // Zeile ersetzen
                                }
                            }
                            if (isset($form_variable2) && $form_variable2 != "") { // Variable $form_variable2 gesetzt und Inhalt?
                                if (strpos($zeilen[$i],"variable2 =") == true) { // String 'variable2 =' in Zeile vorhanden?
                                    $zeile = "$"."variable2 = '$form_variable2';\n"; // Zeile ersetzen
                                }
                            }
                            if (isset($form_variable3) && $form_variable3 != "") {// Variable $form_variable3 gesetzt und Inhalt?
                                if (strpos($zeilen[$i],"variable3 =") == true) { // String 'variable3 =' in Zeile vorhanden?
                                    $zeile = "$"."variable3 = '$form_variable3';\n"; // Zeile ersetzen
                                }
                            }
                            if (isset($form_variable4) && $form_variable4 != "") { // Variable $form_variable4 gesetzt und Inhalt?
                                if (strpos($zeilen[$i],"variable4 =") == true) { // String 'form_variable4 =' in Zeile vorhanden?
                                    $zeile = "$"."variable4 = '$form_variable4';\n"; // Zeile ersetzen
                                }
                            }        
                            fputs($fp, $zeile);
                        }
                        fclose($fp);    
                    }
                    ?>

                    Kommentar


                    • #25
                      @hand

                      Jetzt steh ich auf den Schlauch.
                      Ist das Script jetzt für folgendes Beispiel:

                      Code:
                      <?php
                      include("config.inc.php");
                      print "Title <input type='text' name='title' value='$title'><br>";
                      ?>
                      
                      oder für das von tock gemachte Script?
                      ????
                      *winks*
                      Gilbert
                      ------------------------------------------------
                      Hilfe für eine Vielzahl von Problemen!!!
                      http://www.1st-rootserver.de/

                      Kommentar


                      • #26
                        Original geschrieben von Wotan
                        Hallo Jungs und Mädels,

                        Ich habe eine Datei mit folgenden Inhalt:
                        ...
                        Dies Datei möchte ich jetzt mit einem anderen Script ändern. Zum 1) will ich bei ersten Aufruf die Datei füllen und zum 2) will ich die Datei jederzeit ändern können. Dies soll auf Basis eines Forumlar passieren.
                        Wie kann ich das machen?
                        2) will ich die Datei jederzeit ändern können

                        Das geht aus der Logik des Skriptes doch hervor.

                        Aber ich mag keine Filesystemoperationen. Ich wollte überhaupt nichts mehr zu Themen dieser Art antworten. Aber ich hatte das Gefühl hier zerfranst sich was und bevor ich alles durchgelesen habe, habe ich mir gedacht das ist ein Beitrag zu Deinem Wunsch ein File von Außen jederzeit ändern zu können.

                        Filesystemoperationen auszucodieren ist obermühsam, 100 Zeilen monströsen Code damit man Kleinigkeiten handeln kann. Für mich kommt das nur in Ausnahmefällen vor, aber nie basieren Applikationen darauf. Das ist Masochismus.

                        Kommentar


                        • #27
                          @hand

                          Jetzt steh ich auf den Schlauch.
                          Ist das Script jetzt für folgendes Beispiel:

                          Code:
                          <?php
                          include("config.inc.php");
                          print "Title <input type='text' name='title' value='$title'><br>";
                          ?>
                          
                          oder für das von tock gemachte Script?
                          ????
                          *winks*
                          Gilbert
                          ------------------------------------------------
                          Hilfe für eine Vielzahl von Problemen!!!
                          http://www.1st-rootserver.de/

                          Kommentar

                          Lädt...
                          X