Hallo Vivien,
ich habe deinen Code ein wenig geändert:
<form id="elli" method="post">
<h5>Erste Meldung</h5>
<p><label for="tit1">Titel:</label></p>
<input value="<?php echo htmlspecialchars(file_get_contents("../bg/prg/data/start/t1.htm")); ?>" type="text" name="tit1" id="tit1" />
<p><label for="con1">Inhalt:</label></p>
<textarea name="con1" id="con1"><?php echo htmlspecialchars(file_get_contents("../bg/prg/data/start/c1.htm")); ?></textarea>
<button type="submit">Absenden</button>
<?php
if(isset($_POST['tit1']))
{
file_put_contents('t1.htm', $_POST['tit1']);
}
if(isset($_POST['con1']))
{
file_put_contents('c1.htm', $_POST['con1']);
}
?>
</form>
Allerdings gibt mir das folgenden Fehler aus:
Notice: Undefined index: tit1 in [...]\admin\adbeastart.php on line 30
Notice: Undefined index: con1 in [...]\admin\adbeastart.php on line 31
Zur Info: lines 30 & 31 stehen die php-Befehle file_pu_contents.
Was läuft falsch bzw. wo liegt mein Fehler?
Die Indizes existieren nicht. Ich habe mal folgendes ergänzt:
- Prüfung ergänzt, ob der betreffende Index des Arrays _POST auch existiert (wenn du die Seite aufrufst, um den Formularinhalt zu ändern, schickst du ja keine Daten an das Skript – das machst du ja erst, wenn du auf Speichern klickst!), Fehlermeldung sollte somit nicht mehr geworfen werden
- die Eingabefelder mit dem label-Element – wie von Gunnar gefordert – korrekt ausgezeichnet
- statt input button (Gründe dafür)
- reset-Button entfernt (wenn du dich verklickst und den aus Versehen erwischst, wirst du sehr fluchen!), wenn du die Änderungen nicht übernehmen möchtest, kannst du das Formular ja einfach ungespeichert verlassen (natürlich könntest du auch einfach eine vorherige Abfrage integrieren)
- htmlspecialchars auf die Ausgabe in input und textarea angewendet (escapest du auf der ausgebenden Seite auch korrekt?)
Gruß
Julius