[Variablen] Variablen einer config Datei editieren

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

  • [Variablen] Variablen einer config Datei editieren

    Ich würde gerne definierte Variablen in einem Formular in Textfeldern anzeigen lassen, diese dann verändern und speichern können.
    Wer kann mir helfen und vielleicht ein Beispiel mit einer Variablen zeigen???


    thanks and greetz from foggy
    PHP Code Schnipsel

  • #2
    vorhandenes file

    PHP-Code:
    <?
       // Aufgriff vom Forumular?
       if (! isset ($_POST["submit"]))
       {
          // Datei einlesen
          $data = file ("config.php");

         // Formular und Tabelle
          echo "<form method='POST' action='" . $_SERVER["PHP_SELF"] . "'>\n";
          echo "<table>\n";
          
          // Zeilenweise durchgehen
          foreach ($data as $line)
          {
            // Zeile trimmen
            $line = trim($line);

            // Auf "=" prüfen
            if (strpos ($line, "=") !== false)
            {
               // Zeile zerlegen
               $values = explode ("=", $line);

               // Daten ausgeben
               echo " <tr>\n";
               echo "   <td>\n";
               echo "    $values[0] <input type='hidden' name='namen[]' value='" . $values[0] . "'>\n";
               echo "   </td>\n";
               echo "   <td>\n";
               echo "    <input type='text' name='values[]' value='" . $values[1] . "'>\n";
               echo "   <td>\n";
               echo " </tr>\n";
            }
          }
          echo " <tr>\n";
          echo "  <td colspan='2' align='center'><input type='submit' name='submit' value='Speichern'></td>\n";
          echo " <tr>\n";
          echo "</table>\n";
          echo "</form>\n";
       }
       else
       {
          // Daten gesetzt?
          if (isset($_POST["namen"]) && isset($_POST["values"]))
          {
             $namen  = $_POST["namen"];
             $values = $_POST["values"];

             // Anzahl
             $count = count($namen);

             // Array initialisieren
             $data = array();
           
             // Schleife über Daten
             for ($i = 0; $i < $count; $i++)
             {
                 // Zeile zusammensetzen
                 $data[] = "   " . $namen[$i] . " = " . stripslashes($values[$i]) . "\n";
             }

             // Neue Datei öffnen
             $fp = fopen ("config.php", "w");

             if ($fp)
             {
                // PHP-Tag ausgeben
                fputs ($fp, "<?\n");
      
                // Daten ausgeben
                foreach ($data as $line)
                  fputs($fp, $line);

                // PHP-ATag ausgeben
                fputs ($fp, "?>");

                // Datei schließen
                fclose ($fp);
             }
          }
       }
    ?>
    dieses script ist eigentlich einwandfrei bloss wenn die Datei geschrieben wird stehen alle Variablen auf 2-3 linien. Ein zweites einlesen dises files wird unmöglich
    PHP Code Schnipsel

    Kommentar


    • #3
      ersetze:
      PHP-Code:
      // Daten ausgeben
                  
      foreach ($data as $line)
                    
      fputs($fp$line); 
      durch
      PHP-Code:
      // Daten ausgeben
                  
      foreach ($data as $line)
                    
      fputs($fp$line."\n");

      //Es kann sein dass du dann der ordnung halber oben noch ein . "\n" entfernen mußt. 
      hättest du aber durch ein wenig denken auch hinkriegen können, oder?
      Die Musikreview Seite

      hi, i'm a signature virus. copy me into your signature to help me spread.

      Kommentar

      Lädt...
      X