# Textfeld auslesen und bestimmte Werte in Textfelder schreiben



## MiNiMaG (9. August 2004)

Ich beschreib das mal am besten in beispiel (fiktiv):

Ich hab ne Tabelle in der folgendes steht:

```
Name: Müller
Vorname: Max
Tel: 0815/4711
Hobbies: Jede Menge
Email: a@b.com
```

Nun soll der Text via Copy & Paste in ein Textfeld eingefügt werden
Mittels Buttonklick soll nun das ganze ausgewertet werden und in einzelne Formularfelder eingetragen werden.
z.B:

Name, Vorname [Müller, Max]
Vorwahl: [0815]
Tel: [4711]
...

Ich hab sowas schon mal mittels Java irgendwo gesehn, weis aber nimmer wo.

Habt ihr mal bitte ein Tut oder eine verständliche Source für mich ?

Thx

Illu


----------



## Krypthonas (9. August 2004)

Hallo. 

Hier einfacher und total primitiver Code aus Zeitgrünen.


```
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Split &amp; Drop Properties</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript">
function __UpdateFORM()
	{
		var currentContent="";
		if(document.getElementById("split_content")!==null)
			{
				var content=document.getElementById("split_content").value.split("\n");
				for(i=0;i<content.length;i++)
					{
						currentContent=content[i].split(":");
						if(document.getElementById(currentContent[0].toLowerCase())!=null)
							{ 
								document.getElementById(currentContent[0]).value=currentContent[1].replace(" ","");;
							}
					}
			}
		
		
	}


</script>
</head>

<body>
<form name="forms" id="forms" method="post" action="">
<table width="100%">
	<tr>
	  <td width="100%"><p>
		  <textarea name="split_content" id="split_content">Name: Müller
Vorname: Max
Tel: 0815/4711
Hobbies: Jede Menge
Email: a@b.com

</textarea><br>
<input type="button" name="button" value="Split &amp; Drop" onBlur="__UpdateFORM();">
</p>
	    <p>Name 
	      <input type="text" name="name" id="name">
	    </p>
	    <p>Vorname
	      <input type="text" name="vorname" id="vorname">
	    </p>
	    <p> Tel  
	      <input type="text" name="tel" id="tel">
	    </p>
	    <p> Hobbies 
	      <input type="text" name="hobbies" id="hobbies">
	    </p>
	    <p> Email 
	      <input type="text" name="email" id="email">
	    </p></td>
	</tr>
</table>
</form>
</body>
</html>
```

Achte darauf, dass die Textarea Daten, wie Tel, Name *gleich* den Input Namen Feldern sind.
Der Code ist wie schon gesagt einfach. Anlernen sollte deshalb kein Problem darstellen.

In diesem Sinne


----------



## MiNiMaG (10. August 2004)

Vielen Dank

klappt super

nur eine frage:
wie kann ich das machen, dass ich nach dem buttonklick nicht nochmal in die seite reinklicken muss, damit sie refresht wird ?

edit:
Ich habe bei der Ausgabetabelle einmal nen Wert der so dargestellt wird:
(Level 85)

In meinem Formular sollte dann aber nur die zahl 85 ausgelesen werden
ich dachte mal mit replace an die sache ranzugehen, aber das mag irgendwie nicht so wie ich


----------



## Krypthonas (10. August 2004)

Das ist im Prinzip einfach, du erstellst ein neues Input Feld mit den Attribut Name und den Attribut ID. Beide haben den gleichen wert. Nämlich *level*.

In die Textarea kommt dann: *Level: 85*

Fertig, dass sollte funktionieren.


```
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Split & Drop Properties</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript">
function __UpdateFORM()
	{
		var currentContent="";
		if(document.getElementById("split_content")!==null)
			{
				var content=document.getElementById("split_content").value.split("\n");
				for(i=0;i<content.length;i++)
					{
						currentContent=content[i].split(":");
						if(document.getElementById(currentContent[0].toLowerCase())!=null)
							{ 
								document.getElementById(currentContent[0]).value=currentContent[1].replace(" ","");;
							}
					}
			}
		
		
	}


</script>
</head>

<body>
<form name="forms" id="forms" method="post" action="">
<table width="100%">
	<tr>
	  <td width="100%"><p>
		  <textarea name="split_content" id="split_content">
Name: Müller
Vorname: Max
Tel: 0815/4711
Hobbies: Jede Menge
Email: a@b.com
Level: 85
</textarea><br>
<input type="button" name="button" value="Split & Drop" onClick="__UpdateFORM();">
</p>
	    <p>Name 
	      <input type="text" name="name" id="name">
	    </p>
	    <p>Vorname
	      <input type="text" name="vorname" id="vorname">
	    </p>
	    <p> Tel  
	      <input type="text" name="tel" id="tel">
	    </p>
	    <p> Hobbies 
	      <input type="text" name="hobbies" id="hobbies">
	    </p>
	    <p> Email 
	      <input type="text" name="email" id="email">
	    </p>
                          <p> Level
	      <input type="text" name="level" id="level">
	    </p>

</td>
	</tr>
</table>
</form>
</body>
</html>
```

Die Seite braucht man nun auch nicht refreshen.
In diesem Sinne


----------



## MiNiMaG (10. August 2004)

das problem ist das, dass die Klammer weg muss 

was ich bis jetzt rausbekam war: 85)

nach meiner logik müsste ja ein

currentContent=currentContent.replace(")","");

reichen, aber das mag er net so richtig, bzw garnicht

danke für deine mühen


----------



## MiNiMaG (10. August 2004)

Und ich hab leider noch ein problem ;(

"Erster Befehl: if"
"Zweiter Befehl: else"

und soweit ich weis, kann man keine leerzeichen im Namen des Textfeldes verwenden

Wobei ich da j mittels einem Replace daraus
"befehleins: if"
"befehlzwei: else"

machen könnte, wenn ich wüsste wie


----------



## G-Hirn (12. Mai 2008)

Ist zwar schon eine lange Zeitspanne her, als der Beitrag verfasst wurde, aber ich versuche es trotzdem mal.

Ich suche so etwas ähnliches, welches aber nicht nur im IE funktionieren sollte. Kann mir bitte jemand dabei helfen.

Und zwar möchte ich auch Werte aus einem Textfeld auslesen. Aus einem Onlinegame wird per Copy&Paste folgendes eingefügt. So sieht dann das echte Textfeld aus, samt den Leerzeilen.


> Kampfergebnis Am 12.05.2008 um 22:13:37 Uhr
> 
> 
> Name:	Trefferpunkte:	Lebensenergie:
> ...





Nun sollen aus den einzelnen Zeilen des Textfeldes immer nur vereinzelte Werte ausgelesen und in ein <input type="text" name="...> übernommen werden. Die Daten werden dann an eine SQL Datenbank gesendet. Das habe ich schon fertig programmiert.

Ich zähle mal auf, aus welcher Zeile etwas ausgelesen werden soll. 
Zeile 1 Datum
	
	
	



```
12.05.2008
```
Zeile 1 Uhrzeit
	
	
	



```
22:13:37 Uhr
```
Zeile 5 Name
	
	
	



```
Ich
```
Zeile 6 Gegnername
	
	
	



```
Gegner
```
Zeile 7 Beute
	
	
	



```
43
```
Spielerlink
	
	
	



```
Der wird per Drag&Drop eingefügt.
```

Kann mir jemand weiterhelfen? 
Wäre sehr erfreut darüber, da ich zur Zeit alle Daten einzeln in die jeweiligen Felder eingebe.


----------



## Sven Mintel (12. Mai 2008)

Schau dir mal Reguläre Ausdrücke an, die sind für soetwas herrvorragend geeignet


----------



## venTuri10 (5. Juli 2010)

Guten Morgen zusammen.

Ich habe eine etwas andere Frage, wozu ich besser mal die Situation erläutern will:
Ich bin ein absoluter HTML Anfänger und habe vor eine Website zu gestalten welche Eingabefelder wie auch Auswahlbuttons enthalten soll.

Die große Fragen ist nun für mich wie werden die eingegebenen Daten abgespeichert und wie kann ich sie auslesen?


Gruß
venTuri


----------



## Sven Mintel (5. Juli 2010)

Moin, 

zu welchem Zweck sollen die Eingaben denn gespeichert werden?


----------



## venTuri10 (6. Juli 2010)

Ich habe bin dabei ein Konzept zu einer Facebook/Youtube ähnlichen Seite zu schreiben und glaube eine Möglichkeit gefunden zu haben die User zu Korrekten Angaben bewegen zu können ohne das sie sich veräppelt vorkommen.


Gruß
venTuri


----------



## Sven Mintel (6. Juli 2010)

Mich hätte statt einer blumigen Umschreibung eher interessiert, wer die gespeicherten Daten weiterverarbeiten soll...davon hängt nämlich ab, wo man sie speichert


----------



## venTuri10 (6. Juli 2010)

wie man merkt: absolut keinen Plan von der Materie 

ja, gute Frage...also die sollen so Datenverkaufsmäßig an Interessenten verkauft werden.

Ich habe halt überhaupt keine Ahnung von dem Ganzen und hoffe da irgendwie durchblicken zu können.


----------



## Sven Mintel (6. Juli 2010)

Da musst du die Daten serverseitig speichern.

Der Übliche Weg: das Formular mit den Formularfeldern wird an serverseitiges Skript gesendet, welches die Daten dann auf dem Server speichert(bspw. in einer Datenbank)

Du müsstest dich also beschäftigen mit:

Formularen
einer serverseitigen Sprache wie bspw. PHP
Datenbanken, bspw. MySQL


----------



## venTuri10 (7. Juli 2010)

Guten Morgen 

ähm ja genau...Bahnhof?! 

PHP ist doch - wenn ich mich nicht irre - sowas ähnliches wie Java, oder?

Momentan sieht das alles ziemlich schlcht für die Durchführung aus -.-


----------

