Mysql daten in form mit textarea auslesen?

...komplette Frage anzeigen

1 Antwort

Du könntest doch einfach, wenn du das Formular abgeschickt hast, die selbe Notiz direkt wieder auslesen und dann in dem Formular voreingetragen wieder anzeigen (und z.B. einen "Update" statt eines "Speichern" Button anzeigen), oder was genau willst du erreichen?

wohnmobilfan 28.06.2017, 14:53

Ja genau das ist das was ich wollte! Perfekt:)

Nun habe ich aber eben das Problem das ich es einfach nicht schaffe die Daten wieder in das selbe Feld zu Laden.

Kannst du mir helfen :/?

0
mastema666 28.06.2017, 15:04
@wohnmobilfan

Wie genau soll das denn aussehen?

Also willst du viele Notizen auf einer Seite ausgeben oder für jede eine "eigene" Unterseite ?

Das Prinzip wäre allerdings das gleiche, wenn du eine eigene Seite pro Notiz anzeigen willst, dann leitest du nach dem Speichern der Notiz eben auf diese Seite weiter, z.B. notizen.php?id=123, dort liest du dann die ID (hier 123) aus und fragst den dazugehörigen Datensatz aus der DB ab. Das Ergebnis dieser Abfrage gibst du dann einfach direkt voreingetragen in dem Formular aus, das würde ja dann fast genauso aussehen wie das zum Eintragen, nur dass es eben einen "Update" statt "Speichern" Button hat )und anschliessend kein neuer Eintrag gemacht wird, sondern der aktuelle geupdated).

Wenn du alle auf einer Seite anzeigen willst, dann würde das sehr ähnlich funktionieren, nur dass du halt alle Notizen abfragst und jede in einem eigenen Formular ausgibst, dabei solltest du dann unbedingt irgendwo auch die ID festlegen, z.B. als hidden Feld, damit du dann jeweils auch erkennen kannst, welche Notiz denn nun aktualisiert werden soll wenn man das Formular abschickt.

1
wohnmobilfan 28.06.2017, 15:08
@mastema666

Danke für deine Antwort, da ich mich mit php und mysql nicht wirklich gut auskenne denke ich das es am einfachsten ist wenn ich alles auf einer Seite habe.

Leider verstehe ich aber nicht welchen Code ich benützen muss um die Inhalte aus der DB in das from einzufügen.

Hast du hier womöglich ein Beispiel?

Besten Dank!

0
mastema666 28.06.2017, 15:15
@wohnmobilfan

Das geht wie bei jeder anderen Ausgabe auch mit echo, halt einfach innerhalb des Formulares / Feldes so in der Art ausgeben:

<form action="" mehtod="post">
  <input type="hidden" name="id" value="<?php echo $row->id; ?>">
  <textarea name="notiz">
    <?php echo $row->notiz; ?>
  </textarea>
</form>
0
wohnmobilfan 28.06.2017, 15:29
@mastema666

Super Danke jetzt weiss ich wie das aussehen soll. Aber wenn ich nun etwas in das feld eingebe und auf Speichern drücke, dann werde ich auf eine php seite weitergeleitet die die sachen in meine DB speicher. Wenn ich wieder zurück gehe, kommen die Sachen die ich eingeben haben, aber nur bis ich die Seite aktualisiere, dann ist wieder alles Leer.


Was ist genau mit $row gemeint?

0
mastema666 28.06.2017, 15:37
@wohnmobilfan

$row wäre in dem Fall das Objekt, in dem das Ergebis der DB-Abfrage enthalten ist (kann ggf auch ein Array sein, je nachdem wie du das machst, ich benutze da halt in der Regel Objekte).

Auf der Seite, wo du in der DB speicherst, musst du dann natürlich auch noch abfragen, ob ein Datensatz eingetragen oder aktualisiert werden soll (in meinem Beispiel erkennbar an der via POST übergebenen ID, kannst du natürlich nennen wie du willst, nur irgendwie musst du ja wissen, was da geupdated werden soll). Also wenn die ID gegeben ist, dann musst du den Datensatz mit dieser ID aktualisieren, wenn nicht, dann einen neuen hinzufügen.

0
wohnmobilfan 28.06.2017, 15:49
@mastema666

Oh das ist doch viel komplizierter als ich gedacht habe..:(

Falls das nicht zuviel verlangt ist wäre ich noch froh um ein Code-Beispiel:/

wäre es nicht einfach wenn ich das Speichern der eingebenen Daten im gleichen .php dokument hätte wie das form?

Danke viel mals

0
wohnmobilfan 28.06.2017, 15:55
@mastema666
///Hier noch der Quelltext, vielleicht kannst du ja helfen:)

<?php
$verbindung = mysql_connect("DB", "DB", "PW")
or die ("Fehler im System, Verbindung konnte nicht Hergestellt werden");
mysql_select_db("lukasknu_mathe")
or die ("Verbindung gescheitert!");


$date = $_POST["date"];
$note = $_POST["note"];

if($date == "" or $note == "") {
echo "Du hast die Felder nicht ausgefüllt..!";
} else {

$eintrag = "INSERT INTO mathe
(date, note)

VALUES
('$date', '$note')";

$eintragen = mysql_query($eintrag);

if($eintragen == true) {
echo "Notes wurden gespeichert";}
else {
echo "Deine Notes konnten nicht gespeichert werden, wende dich an den Boss..!";}
}
mysql_close($verbindung);
?>



Datum:


Notizen:

<?php echo $row->note; ?>




0
wohnmobilfan 28.06.2017, 16:01
@wohnmobilfan

Komischerweise hat es den Quelltext nicht richtig eingefügt.. kann ich dich irgendwie per Privatnachricht erreichen?

0
mastema666 28.06.2017, 18:10
@wohnmobilfan

Jo, hab deine Anfrage angenommen, solltest mir jetzt PNs schreiben können. Codes aber allgemein besser bei z.B. pastebin.com posten und hier nur verlinken, GF hat so seine Probleme mit Codes.

Zu deiner anderen Frage, ja, wäre sehr sinnvoll das alles in einer PHP Datei zu machen, sollte auch kein Problem sein.

Und im voraus schon mal eine kleine Anmerkung: Die mysql_* Funktionen solltest du nicht mehr benutzen, die sind veraltet und funktionieren in aktuellen PHP Versionen sogar schon gar nicht mehr (wurden mittlerweile entfernt), besser mal mit PDO beschäftigen: http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers

0

Was möchtest Du wissen?