# Form mit Textarea als Übergabeparameter



## dste (9. Februar 2005)

Hallo, 
ich bin Anfänger in HTML, aber ich hoffe es hilft mir totzdem jemand.
Problem:
Ich habe eine Seite mit mehreren Reitern (Unterseiten)
Jede Unterseite enthält eine <form> mit einer action, die in allen Formularen die gleiche ist. Die Felder aller Seiten sollen als Parameter bei dieser action übergeben werden. D.h. ich muß innerhalb der Form alle Felder hinterlegt haben. Bei <input> mache ich das über den type=hidden.
Aber wie mache ich das bei einem <textarea> (mehrzeiliger Text)?

Danke für Eure Hilfe.


----------



## redlama (9. Februar 2005)

Hi!

Das verstehe ich nicht ganz!
Wenn Du ein Formular hast, dann sendest Du alles über <input type="hidden">? Dann sollen also keine Daten eingegeben werden können?
Na dann könntest Du die Daten, die in einem <textarea> sind doch in ein <input type="hidden"> legen.
Oder habe ich Dich falsch verstanden?
Ansonsten sehe ich nämlich keinen Sinn darin, ein textarea verstecken zu wollen, ...

redlama


----------



## dste (9. Februar 2005)

Hallo,

ich brauche zum Schluß alle Daten. Aber unter den 4 Reitern, die jeweils aus einer Form bestehen habe ich nur ein Teil der Felder sichtbar. Die action-Funktion braucht aber alle Daten. Darum die, die nicht in diesem Formular angezeigt werden als Unsichtbare Felder, damit sie der action zur Verfügung stehen.

Wenn ich den Inhalt aus einem Textarea von Reiter 2 im Formular vom Reiter 1, 3 oder 4 in einem <input type=hidden> einstelle, verliere ich doch Daten.

Außerdem macht mir das Textarea von der Darstellung einige Probleme. komme ich auf den Reiter 2 zurück, ist die Darstellung des Textareainhaltes plötzlich nur noch einzeilig 
Danke - Gruß Dirk


----------



## redlama (10. Februar 2005)

Ah, jetzt habe ich Dich richtig verstanden!
Nun ja, das ist wirklich nicht so ganz einfach!
Du könntest versuchen die Daten in einer abzulegen bzw. sie in eine Datenbank zu speichern, anstatt sie immer zu übergeben.
Ich würde persönlich sogar zur Datenbank (so Dir diese Möglichkeit zur Verfügung steht) bevorzugen. Da kannst Du die Daten einfach reinspeichern und wenn jemand wieder auf den 2. Reiter zurückkommt, wieder in korrekter Form auslesen.
Ansonsten hätte ich, was das versteckte Textarea betrifft, leider keine Lösung für Dich!

redlama


----------



## dste (10. Februar 2005)

Danke redlama für die Anregungen.
Ich habe mir über das Thema mit dem Zwischenspeichern auch schon Gedanken gemacht - Nachteil: viel Transfer zur Datenbank und zurück.
Und das Problem ist damit auch nicht gelöst. Ich muß ja die Daten in der Form auch übergeben, damit ich sie zwischenspeichern kann. Außerdem wird der ganze Ablauf um einiges Aufwendiger und komplizierter.

Vielleicht hat ja noch jemand eine Anregung oder einen Rat für mich

Danke
Dirk


----------



## Sven Mintel (10. Februar 2005)

Auf welche Art und Weise übergibst du die Daten denn überhaupt von Seite zu Seite... besser gesagt...womit liest du sie aus?
   Mit Javascript, oder mit einer serverseitigen Sprache?

 Als am Einfachsten würde ich da das Speichern in einer Session ansehen.... da brauchst du nicht immer alles zu übergeben.


----------



## dste (10. Februar 2005)

Das ganze ist mit PHP und HTML programmiert. In der Regel werden nur sehr wenige Parameter über den <href> oder <location> oder die <form action> übergeben.

Über die Session werden schon ein ganze Menge Parameter übergeben, die für die ganze Anwendung notwendig sind.

In diesem Fall hier brauche ich die Daten/Parameter nur für eine Seite und für die Verarbeitung beim Speichern.

Diese Seite baut sich aber aus 4 Reitern/Unterseiten auf. Klicke ich auf einen Reiter, wird die anzeigende Funktion wieder aufgerufen, nur mit dem Parameter, welcher Reiter ausgewählt wurde. Die Auswahl setzt einen submit ab, der also die form-action aufruft, die wiederum dieses PHP-Programm dateneingabe aufruft. Jedes Formular ruft wieder diese Funktion auf mit Param1 = 1 oder 2 oder 3 oder 4 und dementsprechend wird der ausgewählte Reiter angezeigt. Im Programm über if entsprechend aufgerufen. Erst beim Speichern wird unter der Buttonverarbeitung eine andere PHP-Routine aufgerufen.


----------

