Per PHP generiertes Formular auswerten...

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

  • Per PHP generiertes Formular auswerten...

    Howdy!

    mein Problem ist folgendes: Ich habe ein ganz kleines Kalender-Script auf .txt basis geschrieben, für jeden Termin wird eine .txt-datei angelegt. Jetzt möchte ich eine Funktion einbauen, in der ich die .txt Datein einzeln manipulieren kann, natürlich in einer übersichtlichen Seite, die Darstellung funktioniert so wie ich mir das vorstelle (die .txt's werden in einer Text-Area zum verändern ausgegeben), die ganzen Formulare die so für jede .txt entstehen funktionieren auch, hier mal der Teil des Codes:

    PHP-Code:
    // Anzeigen/Löschen
    foreach (array_slice(scanDir($verzeichnis), 2) as $datei) {
     if (
    $datei >= date("Ymd")) {
      if (isset(
    $_POST["loeschen"]) && file_exists($verzeichnis $_POST["jahr"] . $_POST["monat"] . $_POST["tag"])) {
       if (
    unlink($verzeichnis $_POST["jahr"] . $_POST["monat"] . $_POST["tag"])) {
        echo 
    "<h4>Der Eintrag wurde gel&ouml;scht.</h4>";
       }
      }
      if (
    file_exists($verzeichnis $datei)) {
      
    $datei2 substr($datei0, -4);
       echo 
    "<tr>
    <td width=\"50%\" valign=\"top\"><p>" 
    strftime("%A, %d %B %Y"mktime(000substr($datei242), 
    substr($datei2, -2), substr($datei204))) . " " .
        
    file_get_contents($verzeichnis $datei) . "</p><hr></td>";
        
         echo 
    "    <td width=\"44\"></td><td valign=\"top\"><form method=\"post\" action=\"".$scriptname."\">
        <textarea name=\"descript\" rows=\"5\" cols=\"50\" wrap=\"physical\">"
    ;
        
        
    readfile("events/$datei");
        
        echo 
    "</textarea><br>
        <input type=\"submit\" name=\"send\" value=\"Beschreibung Speichern\">
        </form></td>
          </tr>"
    ;
         
              
      }
     }
     else if (
    $datei != "") {
      
    unlink($verzeichnis $datei);
     }
     
     
    }
      if(isset(
    $_POST['send'])) {
              echo 
    "hola";
              
    unlink ($verzeichnis.$datei);
            
    $descript=$_POST['descript'];
            
    $ausgabe=$descript;
            
    $dateix=fopen($datei,"a+");
            
    $output=fwrite($dateix,$ausgabe);
            
    fclose($dateix);
        }
    ?> 
    Bei dem Code lösche ich beim Drücken auf den submit button logischerweise immer die letzte datei, die in $datei gespeichert ist. Wie bringe ich dem Script bei, das er die Datei löschen/bearbeiten soll, die ich gerade in der Textarea bearbeitet habe?
    Hab versucht noch einen Counter einzubauen, der jeder andere textarea einen anderen namen gibt descript1, descript2 etc..., aber wirklich weiter gekommen bin ich damit auch nich...

    Wäre nett, wenn jemand mir mit nem Lösungsansatz weiterhilft.

    MFG,
    Alex
    Zuletzt geändert von xserio; 28.03.2009, 13:02.

  • #2
    Ich sehe keine form für Löschen

    Kommentar


    • #3
      Bitte die Forenregeln beachten.

      Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

      bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
      Wie man Fragen richtig stellt

      Kommentar


      • #4
        Original geschrieben von asp2php
        Ich sehe keine form für Löschen
        ich möchte auch nicht unbedingt löschen, ich möchte editieren, dazu erzeugt das PHP script für jede textdatei ein Formular mit einer Textarea und einem Submit button genau hier:

        PHP-Code:
           echo "    <td width=\"44\"></td><td valign=\"top\"><form method=\"post\" action=\"".$scriptname."\">
            <textarea name=\"descript\" rows=\"5\" cols=\"50\" wrap=\"physical\">"
        ;
            
            
        readfile("events/$datei");
            
            echo 
        "</textarea><br>
            <input type=\"submit\" name=\"send\" value=\"Beschreibung Speichern\">
            </form></td>
              </tr>"

        und hier unten:

        PHP-Code:
          if(isset($_POST['send'])) {
                  echo 
        "hola";
                  
        unlink ($verzeichnis.$datei);
                
        $descript=$_POST['descript'];
                
        $ausgabe=$descript;
                
        $dateix=fopen($datei,"a+");
                
        $output=fwrite($dateix,$ausgabe);
                
        fclose($dateix);
            } 
        überprüfe ich, ob der submit button geklickt wurde. Das funktioniert auch ("hola" erscheint), allerdings wird immer die letzte Datei des verzechnisses bearbeitet, da diese ja noch in der variable $datei gespeichert ist...Meine frage ist, wie ich dem Script klarmachen kann, dass ich die .txt bearbeiten möchte, die ich in dem Formular editier habe.
        Das ganze soll so funktionieren, dass die alte .txt einfach gelöscht wird (unlink), dann eine neue angelegt wird mit den übergebenen Daten der textarea...

        Original geschrieben von ghostgambler
        Bitte die Forenregeln beachten.
        hab ich. was hab ich falsch gemacht?

        mfg

        Kommentar

        Lädt...
        X