---
title: "Problem bei der Datenbankabfrage"
url: "https://www.typo3.net/d/97584-problem-bei-der-datenbankabfrage"
source: "typo3.net"
tags: ["Extensions","Entwicklung","Datenbank","Frage","PHP"]
created: "2010-03-17"
last_reply: "2010-03-18"
replies: 6
solved: false
page: 1
pages: 1
lang: "de"
---

# Problem bei der Datenbankabfrage

Extensions › Entwicklung · 6 Antworten · gestartet 2010-03-17

## Eröffnungsbeitrag

**oberonal** · 2010-03-17 · [Beitrag #1](https://www.typo3.net/d/97584-problem-bei-der-datenbankabfrage/1)

Über mein erstelltes Frontend Plugin (mit Hilfe des Kickstarters), soll eine Datenbanktabelle angezeigt werden.
Leider erzeugt der Befehl "$GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)" einen Fehler. Wo liegt der Fehler?

Aus den hier aufgelisteten Fehlermeldungen, werde ich leider nicht schlau (siehe **Warning**).

*Wenn ich das FE-Plugin als Backend Plugin laufen lasse, funktioniert es. Ich muss mit Sicherheit irgendwo noch ein paar Einstellungen machen damit er die Funktion nutzen kann. Aber wo?*

**Warning**: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\Program Files\xampp\htdocs\cms\t3lib\class.t3lib_db.php on line 809

**Warning**: Cannot modify header information - headers already sent by (output started at C:\Program Files\xampp\htdocs\cms\t3lib\class.t3lib_db.php:809) in C:\Program Files\xampp\htdocs\cms\typo3\sysext\cms\tslib\class.tslib_fe.php on line 3226

```php
$tabellenname='user_tabelle_name';

$res = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
'*',
$tabellenname,
$tabellenname.'.deleted = 0 AND '.$tabellenname.'.hidden = 0',
'',
'uid DESC',
''
);

$content.='<table>';

while($logRow = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {

$content.='<tr><td>'.$logRow['uid'].'</td><td>'.$logRow['vorname'].'</td><td>'.$logRow['nachname'].'</td><td>'.
$logRow['strasse'].'</td><td>'.$logRow['plz'].'</td><td>'.$logRow['ort'].'</td><td>'.
$logRow['telefon'].'</td><td>'.$logRow['fax'].'</td><td>'.$logRow['email'].'</td><td>'.
$logRow['schulungen'].'</td><td>'.$logRow['qualifikationen'].'</td></tr>';

}

$content.='</table>';
```

## Antworten

### [#2](https://www.typo3.net/d/97584-problem-bei-der-datenbankabfrage/2) · froemken · 2010-03-17

Aktivier im Installtool mal alle debug-Funktionen, wie debug und sqlDebug. Setz außerdem noch deine IP Adresse in devipmask ein und setz displayerror auf 2.
Dann werden dir auch mal vernünftige Fehlermeldungen angezeigt.

### [#3](https://www.typo3.net/d/97584-problem-bei-der-datenbankabfrage/3) · ammannd · 2010-03-17

das ist eine gute idee. aber auch so kannst du den fehler darauf eingrenzen, dass deine SQL-Abfrage fehlschlägt. ich würde folgendes nach der Abfrage und vor der Schleife einbauen:

```php
if ($res === false) {
  echo "Fehler: ".$GLOBALS['TYPO3_DB']->sql_error();
  return;
}
```

so wird im falle eines fehlers (der bei dir ziemlich sicher vorliegt) die entsprechende SQL Fehlermeldung ausgegeben.

### [#4](https://www.typo3.net/d/97584-problem-bei-der-datenbankabfrage/4) · Julian.​Hofmann · 2010-03-17

Hallo.

Die Warning bringt es eigentlich auf den Punkt: Du versuchst via while etwas zu durchlaufen, was irgendwie nicht ganz der Erwartung von PHP (und vermutlich Dir) entspricht. Meine Vermutung wäre, dass Dein SQL-Statement nicht ganz passt. Lass Dir das doch mal ausgeben (<http://typo3blogger.de/typo3-debuggen/#more-3419>)

Viele Grüße
Julian

P.S: Die Berücksichtigung der deleted-, hidden-Felder usw. lässt sich bequemer via [enableFields($table)](http://www.typo3-unleashed.net/typo3apidocs/latest/df/d65/classtslib__cObj.html#a18d6f17ed58e3bb574126d4664d84619) lösen.

### [#5](https://www.typo3.net/d/97584-problem-bei-der-datenbankabfrage/5) · ThBodi · 2010-03-18

Das passt nicht zusammen:

> ...
> (mit Hilfe des Kickstarters)
> ...
>
> ```php
> $tabellenname='user_tabelle_name';
> ```

es müsste heißen:

```php
$tabellenname='tx_extensionname_tabellenname';
```

### [#6](https://www.typo3.net/d/97584-problem-bei-der-datenbankabfrage/6) · Julian.​Hofmann · 2010-03-18

Was sollte da nicht passen?

> **TYPO3 Core-API schrieb:**
>
> Project specific extensions (not generally usable or shareable): Select any name you like and prepend it “user_”
> (which is the only allowed use of a key starting with “u”). This prefix denotes that this extension is a local one which does
> not come from the central TYPO3 Extension Repository or is ever intended to be shared. Probably this is an “adhoc”
> extension you have made for some special occasion.

<https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ExtensionArchitecture/Index.html>

Und entsprechend sind auch dann Tabellennamen mit Prefix "user_". Siehe hierzu [Naming conventions](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ExtensionArchitecture/Index.html)

Viele Grüße
julian

### [#7](https://www.typo3.net/d/97584-problem-bei-der-datenbankabfrage/7) · ThBodi · 2010-03-18

Ok, ich lasse mich gerne korrigieren. Diese Möglichkeit der Extensionbenennung habe ich nie genutzt, daher war sie mir nicht geläufig.

Aber dann müsste es so sein, oder?:

```php
$tabellenname='user_extensionname_tabellenname';
```

---

Quelle: „Problem bei der Datenbankabfrage“, typo3.net, https://www.typo3.net/d/97584-problem-bei-der-datenbankabfrage
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
