---
title: "Checkboxen mit Bezeichnung ausgeben"
url: "https://www.typo3.net/d/71245-checkboxen-mit-bezeichnung-ausgeben"
source: "typo3.net"
tags: ["Extensions","Entwicklung","Frage","PHP","TCA"]
created: "2007-12-04"
last_reply: "2008-01-20"
replies: 3
solved: false
page: 1
pages: 1
lang: "de"
---

# Checkboxen mit Bezeichnung ausgeben

Extensions › Entwicklung · 3 Antworten · gestartet 2007-12-04

## Eröffnungsbeitrag

**liquidblue** · 2007-12-04 · [Beitrag #1](https://www.typo3.net/d/71245-checkboxen-mit-bezeichnung-ausgeben/1)

Hallo liebes Forum,

zunächst möchte ich allen Danken, die mir schon bei meinen Fragen weiterhelfen konnten. Nun habe ich als Typo-Anfänger meine erste eigene Extention gebastelt.

Soweit sogut, nur ein problem habe ich bei den Checkboxen.
Leider werden diese nur mit Zahlenwerten ausgegeben.

Ich möchte aber wenn der Wert angehakt ist, das Lable dazu ausgeben.

also im BE habe ich in meiner Tabelle eine Checkbox mit 6 Möglichkeiten:

[x] Sonne
[] Mond
[] Sterne
[x] Wolken
[] Regen
[x] Wind

Der Benutzer hat nun die möglichkeit im Datensatz eine Mehrfachauswahl anzugeben, welche ausgegeben werden soll.

Dazu hatte ich im der tx_base_pi1.php bisher folgendes bei Selectorboxen gemacht:

```php
				case "aussicht":
				if (!count($this->aussichtCache)) {
					$query = 'SELECT * FROM tx_base_aussicht WHERE pid='.intval($GLOBALS["TSFE"]->id).
						$this->cObj->enableFields('tx_base_aussicht');
						
					$res = mysql(TYPO3_db,$query);
					while($row=mysql_fetch_assoc($res)) {
					$this->energietraegerCache[$row['uid']]=$row;
					}
				}
				return htmlspecialchars($this->aussichtCache[$this->internal['currentRow']['aussicht']]['aussicht']);
```

nun möchte ich einfach anstelle der zahlen hier die angehakten Bezeichnungen ausgeben???

habe zwar einiges hier im Forum gefunden, bin aber leider überhaupt nicht schlau draus geworden da ich mich selbst mit php und sql-abfragen nicht wirklich auskenne. :o

Über hilfe oder Lösungsansätze wäre ich überaus dankbar!

## Antworten

### [#2](https://www.typo3.net/d/71245-checkboxen-mit-bezeichnung-ausgeben/2) · just2b · 2007-12-04

```php
<?// Checkboxen auslesen
$anzahl = 5; #Anzahl Checkboxen
$k = 1;
$Features = $row['deinwert'];
for ($m=0; $m < $anzahl; $m++) {
	if ($Features & $k) {
		$boxArr[$m]=1;
	} else {
		$boxArr[$m]=0;
	}
	$k *= 2;
}?>
```

und du bekommt ein array mit den checkboxen. Die Bezeichnung kannst du dir dann über die locallang holen.

lg georg

### [#3](https://www.typo3.net/d/71245-checkboxen-mit-bezeichnung-ausgeben/3) · liquidblue · 2007-12-06

Hallo Georg, vielen Dank für deine schnelle Antwort!
hab das ganze nun aus meinem extentiontext soweit umgebaut wie ich das dann später brauche.

leider stosse ich bei der Ausgabe über die locallang.xml weiterhin an meine Grenzen. Aktuell wird garnichts mehr ausgegeben weil offensichtlich die lables nicht geladen werden???

hier meine locallang.xml
<label index="pluspunkte.I.0">eintrag 1</label>
<label index="pluspunkte_I.1">eintrag 2</label>

könnte dass nicht auch elegant über die locallang_db.xml gelöst werden da ja da die werte von haus aus schon drin stehen???

hier mal meine baustelle ;)

```php
case "pluspunkte":
  				
$query = 'SELECT pluspunkte FROM tx_base_basisdaten WHERE pid='.intval($GLOBALS["TSFE"]->id).
$this->cObj->enableFields('tx_base_basisdaten');
//$boxen = array('Box_1','Box_2','Box_3','Box_4','Box_5','Box_6','Box_7','Box_8','Box_9');
$res = mysql(TYPO3_db,$query);
while($row=mysql_fetch_assoc($res)) {
for ($m=0; $m < strlen(decbin($row['pluspunkte'])); $m++) {
if (decbin($row['pluspunkte']) & (1<<$m)) {
//$n .= $boxen[$m].", ";
//$n .= $GLOBALS['TSFE']->sL('LLL:EXT:base/locallang_db.xml:tx_base_basisdaten.pluspunkte.I.'.$m.", ");
$n .= $this->pi_getLL('pluspunkte.I.'.$m.", ");
     }
     }
return $n;
}
```

### [#4](https://www.typo3.net/d/71245-checkboxen-mit-bezeichnung-ausgeben/4) · liquidblue · 2008-01-20

Mit Georgs hilfe bin ich auf einen für mich besseren Lösungsansatz gekommen der mir es möglich macht nicht nur die Checkbox auszulesen sonderen das Ergebnis noch etwas aufzupeppen.

Mit diesem Lösungansatz wird folgendes möglich:

-> Checkbox auslesen
-> CSS Formatierungen auf die Einzelnen ergebnisse anzuwenden

Ich habe keine Veränderungen an der tca.php vorgenommen! Zu beachten wäre dass in der locallang.xml für jeden pluspunkt
(<label index="listFieldHeader_pluspunkte.I.1">Stellplatz</label>) auch ein Eintrag vorhanden ist! In der locallangdb.xml war der von Haus aus schon drin.

Am end kanns ja noch der eine oder andere gebrauchen...

```php
case "pluspunkte":
$query = 'SELECT pluspunkte FROM tx_base_basisdaten WHERE pid='.intval($GLOBALS["TSFE"]->id).
					$this->cObj->enableFields('tx_base_basisdaten');
$res = mysql(TYPO3_db,$query);
while($row=mysql_fetch_assoc($res)) {
$n1 = "";
for ($m1=0; $m1 < strlen(decbin($this->internal['currentRow'][$fN])); $m1++) {
if ((($this->internal['currentRow'][$fN]) & (1<<$m1))!=0) {
$boxen1 = array('pluspunkte.I.1','pluspunkte.I.2','pluspunkte.I.3','pluspunkte.I.4','pluspunkte.I.5','pluspunkte.I.6','pluspunkte.I.7','pluspunkte.I.8','pluspunkte.I.9');
$n1 .= "<span class='".$this->getFieldHeader($boxen1[$m1])."'>".$this->getFieldHeader($boxen1[$m1])."&nbsp;<img src='/fileadmin/images/check.png'>&nbsp;</span>&nbsp;";
							}
						}
					}
	
				return $n1;
		break;
```

---

Quelle: „Checkboxen mit Bezeichnung ausgeben“, typo3.net, https://www.typo3.net/d/71245-checkboxen-mit-bezeichnung-ausgeben
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
