Problem bei Dateioperationen

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

  • Problem bei Dateioperationen

    Ok, es geht um eine zentrale Config-Datei, deren Inhalt per Formular editiert werden soll. In der Config-Datei liegen die Inhalte folgendermaßen vor:

    ## Allgemeines
    $title = "..."; /* Titel der Website */
    $newsnumber = "5"; /* Anzahl der News */
    $theme = "standard"; /* Theme für das Design */
    $language = "de"; /* Kürzel der benutzten Sprache */
    ## /Allgemeines

    ...

    ## News
    ...
    ## /News

    Es soll dabei nun die Datei in ein Formular eingelesen werden, wobei jeweils der Abschnitt zwischen beispielsweise "## Allgemeines" und "## /Allgemeines" als eigene Tabelle ausgegeben werden soll mit jeweils dem Name (also hier "Allgemeines") als Überschrift.

    Der Inhalt soll dann so dargestellt werden, dass alles zwischen "/*" und "*/" als Kommentar neben dem jeweiligen Input-Feld steht, dessen Inhalt die Variable und deren Name der Variablenname der Zeile ist.

    Beim Absenden soll dann entsprechend der Inhalt jedes Inputfeldes in der Config-Datei ersetzt werden, aber ohne dass der Kommentar dahinter gelöscht wird.

    Angehängt habe ich ein Bild, wie es bisher ausschaut mit diesem Code:

    PHP-Code:

    echo "<table>";

    $dateiname ="$filename";

    $datei file($dateiname);
    while (list(,
    $zeile)=each($datei)) {
      
    $zeile chop($zeile);
      ++
    $i;
      
    $zeile chop($zeile);
      if (
    ereg("=",$zeile)) {
         list (
    $name,$wert) = split ("=",$zeile);
         
    $wert preg_replace("/( \"|\"| ; )/","",$wert);
         
    $name ereg_replace(" ","",$name);
         echo 
    "<tr><td>$name</td><td><input type=text class=\"inputnormal\" 
    name=\"neuezeile[
    $i][$name]\" value=\"$wert\"></td></tr> \n";
         } else 
         echo 
    "<input type=hidden class=\"inputbig\" name=\"neuezeile[$i][0]\" 
    value=\""
    .rawurlencode($zeile)."\"> \n"
         }

    echo 
    "<tr><td colspan=2><input type=hidden name=mode value=neu>
    <input type=submit name=MySubmit value=Speichern></td></tr>
    </table>"

    Die Hauptfrage ist also, wie bekomme ich den Kommentarteil in die jeweilige Zeile und kann dies wieder speichern?

    Danke für die Hilfe!
    Angehängte Dateien
    Zuletzt geändert von hottemp; 11.07.2002, 11:55.
    Contentpapst 3.1 - Der Preisbrecher unter den Content-Management-Systemen
    www.contentpapst.de / WYSIWYG-Editor, Rechtesystem, eigene Module per GUI... // Demoversion
    [color=red]Ab sofort in Version 3.1![/color] / dazu auch Standalone Shop-System CP::Shop uvm.

  • #2
    ...lies doch einfach den kommentar mit aus, und schreib ihn danach auch wieder mit rein...
    eval(str_pad(aa|db,4,slarti^~äü_i_)." \"áú¾ïùû䶳Ðäýï©üèíþç£þé\"^~\"no bugs, only features\";");

    Kommentar


    • #3
      Der wird ja derzeit, wie man in der Grafik unter http://www.php-resource.de/attachment.php?postid=48311 sieht auch mit ausgelesen, allerdings soll er halt nicht im Inputfeld sondern daneben stehen, so dass das Input-Feld nur allein die jeweilige Variable enthält.
      Contentpapst 3.1 - Der Preisbrecher unter den Content-Management-Systemen
      www.contentpapst.de / WYSIWYG-Editor, Rechtesystem, eigene Module per GUI... // Demoversion
      [color=red]Ab sofort in Version 3.1![/color] / dazu auch Standalone Shop-System CP::Shop uvm.

      Kommentar


      • #4
        Hier nochmal eine Datei zur Verdeutlichung:
        Angehängte Dateien
        Contentpapst 3.1 - Der Preisbrecher unter den Content-Management-Systemen
        www.contentpapst.de / WYSIWYG-Editor, Rechtesystem, eigene Module per GUI... // Demoversion
        [color=red]Ab sofort in Version 3.1![/color] / dazu auch Standalone Shop-System CP::Shop uvm.

        Kommentar


        • #5
          ...
          $zeile=trim($zeile);
          $teile=explode(";",$zeile,2);
          $name_wert=explode("=",$teile[0],2);
          $name=$name_wert[0];
          $wert=$name_wert[1];
          $kommentar=$teile[1];

          ...nu hast du alles einzeln.
          eval(str_pad(aa|db,4,slarti^~äü_i_)." \"áú¾ïùû䶳Ðäýï©üèíþç£þé\"^~\"no bugs, only features\";");

          Kommentar


          • #6
            Danke für die Hilfe, habe mich jedoch jetzt doch für eine datenbankgestützte Variante entschieden, dies ist einfach besser durchzuführen.
            Contentpapst 3.1 - Der Preisbrecher unter den Content-Management-Systemen
            www.contentpapst.de / WYSIWYG-Editor, Rechtesystem, eigene Module per GUI... // Demoversion
            [color=red]Ab sofort in Version 3.1![/color] / dazu auch Standalone Shop-System CP::Shop uvm.

            Kommentar

            Lädt...
            X