Zum Inhalt springen

Felder vom Typ "input" befüllen

Erstellt am 2. Februar 2005 · 2 Antworten · letzte Antwort am 3. Februar 2005

Tags: Frage

Patrick.​B ·

Hallo,

ich würde bei meiner Extension gerne die Felder vom Typ "input" automatisch mit Werten aus einer Datenbank befüllen. Die Verwendung von "default" hat leider nicht funktioniert. Wie müßte ich vorgehen?

Selectboxen kann ich ohne Probleme mit Werten aus einer Datenbank befüllen, da ich einfach immer das Label mit den Werten setze, aber bei "input" Feldern stehe ich vor einem Problem.

Lg

fatfingerjoe ·

Moinsen

also wenn ich das jetzt so richtig rausgelesen habe scheinst du schon Probleme mit der richtigen Deklaration von form Feldern zu haben.

fangen wir mal mit dem select an:

<select name="SELECTname">
<option value="wurst_pferd">Pferdewurst</option>
<option value="geld">Pling Pling</option>
</select>

diese eingabe wuerde ein select feld erzeugen mit den eintraegen "Pferdewurst" und "Pling Pling" als Auswahlmöglichkeit. Der Bezeichner innerhalb von <option></option> ist also nur der Wert der im Endeffekt im Frontend deiner Seite auftaucht.

Wenn du dieses Beispielformular dann irgendwann abschickst kannst du den wert über $SELECTname auslesen/bearbeiten etc.

Wenn du zum Beispiel die Pferdewurst selektierst ist in dem script dem du diese Form-Daten zuschickst die Variable $SELECTname = 'wurst_pferd' da nicht der wert innerhalb der Option Klammern übergeben wird sondern der value Wert der Option.

Und input Felder kannst du mit "value" füllen.

Beispiel:

<input type="text" name="feld1" value="Standardwert von feld1">

Hoffe ich konnte dir ein wenig weiterhelfen.

Patrick.​B ·

Hallo,

Danke für Deine schnelle Hilfe, aber leider habe ich mich in meinem ersten Posting nicht wirklich gut ausgedrückt und zwar meinte ich keine Formularfelder, sondern ich meinte zusätzliche Felder in der Tabelle pages über ext_tables.php

Meine ext_tables.php sieht wie folgt aus:

<?php if (!defined ("TYPO3_MODE")) 	die ("Access denied.");
$tempColumns = Array (
	"tx_italastupdate_be_user" => Array (		
		"label" => "LLL:EXT:ita_lastupdate/locallang_db.php:pages.tx_italastupdate_be_user",		
		"config" => Array (
			"type" => "input",	
			"size" => "10",	
			"eval" => "required",
			"default" => "1"
		)
	),
	"tx_italastupdate_prefix_last_changed" => Array (		
		"label" => "LLL:EXT:ita_lastupdate/locallang_db.php:pages.tx_italastupdate_prefix_last_changed",		
		"config" => Array (
			"type" => "select",
			"items" => Array (
				Array("LLL:EXT:ita_lastupdate/locallang_db.php:pages.tx_italastupdate_prefix_last_changed.I.0", "0"),
				Array("LLL:EXT:ita_lastupdate/locallang_db.php:pages.tx_italastupdate_prefix_last_changed.I.1", "1"),
			),
		)
	),

);

t3lib_div::loadTCA("pages");
t3lib_extMgm::addTCAcolumns("pages",$tempColumns,1);
t3lib_extMgm::addToAllTCAtypes("pages","tx_italastupdate_be_user;;;;1-1-1, tx_italastupdate_prefix_last_changed");
?>

Und ich würde jetzt gerne tx_italastupate_be_user jedes Mal mit einem Wert aus der DB befüllen lassen. Der Wert in default wird einfach nicht angezeigt.

Bei dem select (tx_italastupdate_prefix_last_changed) darunter funktioniert es problemlos, da ich die einzelnen Auswahlitems (tx_italastupdate_prefix_last_changed.I.0, tx_italastupdate_prefix_last_changed.I.1) in locallang_db.php befülle.

Im Prinzíp will ich also nichts anderes als input Felder in der Tabelle pages im Backend automatisch zu befüllen, aber bis jetzt scheitere ich leider daran.