---
title: "Mehrere Fragen zur ersten eigenen Extension"
url: "https://www.typo3.net/d/102069-mehrere-fragen-zur-ersten-eigenen-extension"
source: "typo3.net"
tags: ["Extensions","Entwicklung","Frage","PHP"]
created: "2010-11-01"
last_reply: "2010-11-03"
replies: 2
solved: false
page: 1
pages: 1
lang: "de"
---

# Mehrere Fragen zur ersten eigenen Extension

Extensions › Entwicklung · 2 Antworten · gestartet 2010-11-01

## Eröffnungsbeitrag

**ViktoriaS** · 2010-11-01 · [Beitrag #1](https://www.typo3.net/d/102069-mehrere-fragen-zur-ersten-eigenen-extension/1)

Hallo!

Im Rahmen meiner ersten Versuche mit der Extensionentwicklung, habe ich
einig Fragen.
Kurzer Background:
Übungsprojekt ist eine Mini-Seminarverwaltung.
2 Tabellen: Dozenten + Kurse.
Derzeit 4 Funktionen: List Dozent, Single Dozent, List Kurse, Single Kurse.

Nun das primäre Problem.
Wenn ich eine Single-Ansicht aufrufe, erhalte ich keine Daten.
Im nachfolgenden Ausschnitt einer List-Funktion, die ordnungsgemäße Daten liefert, habe ich einfach einmal die Schleife auskommentiert und dafür einen Datensatz direkt angesprochen.
Doch wie gesagt, das Ergebnis sind keine Feldinhalte mehr.

```php
  $res = $GLOBALS["TYPO3_DB"]->exec_SELECTquery("*", $table, "deleted = 0 AND hidden = 0" );
  if (mysql_error())  debug(array(mysql_error(), $query));

  $row=$this->pi_getRecord( $table, 1 );
  //while ($row = mysql_fetch_row($res)) 
  //	{ 
	$marker["###KURSNR###"] = "KursNr.: "  . $row[9] ;
	$marker["###KURSTITEL###"] = $row[10] ;
	$marker["###BESCHREIBUNG###"] = $row[15] ;
…….
	$content .=$this->cObj->substituteMarkerArrayCached($subsub, $marker);
   //}

  $content = $this->cObj->substituteSubpart ($subpart, "###KSINGLE###", $content);
  return $content;
```

```php
$row=$this->pi_getRecord( $table, 1 );
```

steht doch überall so dokumentiert #paralyzed#

Bei der Gelegenheit noch 2 weitere Fragen:
Wie man sehen kann, spreche ich die Tabellenspalten über Nummern an.
Setze ich Feldnamen in Hochkommata ein, wird ebenfalls kein Inhalt geliefert.
Woran kann denn das nun wieder liegen?

Und die 3. Frage:
Wie kann ich es erreichen, dass in der List-Ansicht im Backend, rechts vom Datensatz-Symbol nicht nur die Nummer erscheint, sondern auch der Eintrag aus einem Feld?

Danke vielmals im Voraus.
Viele Grüße
Viki

## Antworten

### [#2](https://www.typo3.net/d/102069-mehrere-fragen-zur-ersten-eigenen-extension/2) · Julian.​Hofmann · 2010-11-02

Hallo Viki.

Die Fragen 1+2 dürften gemeinsam zu beantworten sein:

In Deinem Code-Schnipsel nutzt Du die Methode [mysql_fetch_row()](http://de2.php.net/manual/de/function.mysql-fetch-row.php), die Dir ein nummeriertes Array zurückgibt.
Die Methode pi_getRecord() (ruft [checkRecord()](http://www.typo3-unleashed.net/typo3apidocs/latest/d2/d04/class_8t3lib__page_8php_source.html#l00882) auf) liefert hingegen ein assoziatives Array, d.h. Key-Value-Paare.

Damit sind bei Frage 1 für die Singleansicht die einzelnen Werte nicht via nummerischen Array-Index ansprechbar.
Und damit sind bei Frage 2 die Werte nicht via Key ansprechbar, weil nur nummerische Indizes existieren.

Frage 3:
Die Anzeige wird über das [TCA](https://docs.typo3.org/m/typo3/reference-tca/main/en-us/Index.html) gesteuert. Dieses wird in der Regel im Extensionordner in den Dateien ext_tables.php und ggf. tca.php für Deine Tabellen definiert. Den Titel vergibst Du über ['ctrl']['title']. Details:
<https://docs.typo3.org/m/typo3/reference-tca/main/en-us/Index.html>

Viele Grüße
Julian

### [#3](https://www.typo3.net/d/102069-mehrere-fragen-zur-ersten-eigenen-extension/3) · ViktoriaS · 2010-11-03

Hallo Julian!

Danke für die ausführliche Erläuterung. :p

Also:

```php
Für die Schleife:
mysql_fetch_row($res)    und Angabe Feldnummern oder
mysql_fetch_assoc($res)  und Angabe Feldnamen

Für das Auslesen eines Datensatzes:
pi_getRecord() 	und Angabe Feldnamen
??????	        und Angabe Feldnummern
```

**Würde mich nun schon interessieren wie die Funktion (???) heisst, um einen Datensatz auszulesen, der ein numerisches Array liefert.** Bin da leider nicht fündig geworden.

Zu Frage 3:
Der entscheidende Eintrag ist nach meiner Erkenntnis in der tca.php

```php
'ctrl' => array (
'label'     => 'uid',
```

Wobei uid eben durch etwas beliebiges ersetzt werden muss.
Aber (!!!) das scheint ein verdammt heißes Eisen zu sein (8-)8-)8-) )
Ich habe mal versucht, 2 Feldnamen durch Komma oder Punkt getrennt anzugeben.
Folge: Parse error und nix ging mehr. Aber ich hab´s über´s Kundencenter hoffentlich wieder bereinigt. Muss mich jetzt erst malvon dem Schreck erholen.
Viele Grüße
Viki

---

Quelle: „Mehrere Fragen zur ersten eigenen Extension“, typo3.net, https://www.typo3.net/d/102069-mehrere-fragen-zur-ersten-eigenen-extension
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
