---
title: "MySql Fehler \"Where 1 = 1\" ?"
url: "https://www.typo3.net/d/58063-mysql-fehler-where-1-1"
source: "typo3.net"
tags: ["Extensions","Datenbank","Frage"]
created: "2007-02-19"
last_reply: "2007-08-15"
replies: 14
solved: false
page: 1
pages: 1
lang: "de"
---

# MySql Fehler "Where 1 = 1" ?

Extensions · 14 Antworten · gestartet 2007-02-19

## Eröffnungsbeitrag

**febo** · 2007-02-19 · [Beitrag #1](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/1)

Hi typo3´ler

nach dem Update auf die neue Version des tt_Products bekomme ich bei fast allen MySql Abfragen folgenden Fehler:

```php
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /var/lib/typo3/typo3_src-4.0.2/t3lib/class.t3lib_db.php on line 801
```

Also schaltete ich mal den SQL-Debug Modus ein, um zu sehen wo der Fehler liegt und erhalte folgendes (gekürzt):

```php
caller	t3lib_DB::exec_SELECTquery

ERROR	You have an error in... ... near '' at line 5

lastBuiltQuery
SELECT tt_products_cat.uid uid...
FROM tt_products_cat tt_products_cat
WHERE 1=1 AND tt_products_cat.deleted=0...
```

Was soll den **WHERE 1=1**??? Sollte da nicht **uid=1** stehen.

Hatt jemand eine Vorstellung woher der Fehler kommt und wie ich ihn beheben kann?

Danke im Voraus.

Gruß febo

## Antworten

### [#2](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/2) · steffenk · 2007-02-19

where 1=1 ist hier nur ein Platzhalter und keineswegs verkehrt.

Du musst schon die komplette query zeigen, in dem Ausschnitt ist alles korrekt.

### [#3](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/3) · febo · 2007-02-19

Nun gut dann hier alles in ungekürzter Fassung:

**Ausgangslage:**

PHP5
Apache2
MySql 4.1.11
shop 2.5.2
fh_library 0.0.16
table 0.1.9
conf_userts 1.0.4

**caller**

t3lib_DB::exec_SELECTquery

**ERROR**

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 5
lastBuiltQuery	SELECT tt_products_cat.uid uid,tt_products_cat.pid pid,tt_products_cat.tstamp tstamp,tt_products_cat.crdate crdate,tt_products_cat.deleted deleted,tt_products_cat.sorting sorting,tt_products_cat.title title,tt_products_cat.subtitle subtitle,tt_products_cat.image image,tt_products_cat.email_uid email_uid
FROM tt_products_cat tt_products_cat
WHERE
1=1 AND tt_products_cat.deleted=0 AND tt_products_cat.uid=1
ORDER BY .sorting

**debug_backtrace**

require // include // TSpagegen::renderContent // tslib_cObj->cObjGet // tslib_cObj->cObjGetSingle // tslib_cObj->USER // tslib_cObj->callUserFunction // call_user_method // tx_templavoila_pi1->main_page // tx_templavoila_pi1->renderElement // tx_templavoila_pi1->processDataValues // tslib_cObj->cObjGet // tslib_cObj->cObjGetSingle // tslib_cObj->RECORDS // tslib_cObj->cObjGetSingle // tslib_cObj->cObjGetSingle // tslib_cObj->CASEFUNC // tslib_cObj->cObjGetSingle // tslib_cObj->COBJ_ARRAY // tslib_cObj->cObjGet // tslib_cObj->cObjGetSingle // tslib_cObj->CASEFUNC // tslib_cObj->cObjGetSingle // tslib_cObj->CASEFUNC // tslib_cObj->cObjGetSingle // tslib_cObj->cObjGetSingle // tslib_cObj->USER // tslib_cObj->callUserFunction // call_user_method // tx_ttproducts_pi1->main // tx_ttproducts_pi1->doProcessing // tx_ttproducts_pi1->products_display // tx_ttproducts_list_view->printView // tx_ttproducts_category->getMarkerArray // tx_ttproducts_category->get // tx_table_db->exec_SELECTquery // t3lib_DB->exec_SELECTquery // t3lib_DB->debug

**HTML Ausgabe**

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /var/lib/typo3/typo3_src-4.0.2/t3lib/class.t3lib_db.php on line 801[/b]

### [#4](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/4) · febo · 2007-02-19

Hi,

hm... liegt es vielleicht an dem **.sorting**? Habe in der ext_tables.php vom shop gesehen, das dieser Wert fast überall auskommentiert ist. Ausserdem gefällt mir der Punkt nicht.

febo

### [#5](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/5) · steffenk · 2007-02-19

genau daran liegts. Wähl doch mal ne eigene Sortierung, ansonsten ist das ein Fehler in der Extension selber.

### [#6](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/6) · igorshmigor · 2007-02-19

Was mir aber auch komisch vorkommt ist:

```php
... ,tt_products_cat.email_uid email_uid
FROM tt_products_cat tt_products_cat
WHERE ...
```

wieso stehen email_uid und tt_products_cat jeweils doppelt?
Vielleicht ist das der Fehler?

### [#7](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/7) · febo · 2007-02-19

Hi,

gut werde mal schauen und hier posten was ich gefunden haben.

Vielen Dank erstmal.

febo

### [#8](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/8) · extension22 · 2007-02-19

> **igorshmigor schrieb:**
>
> Was mir aber auch komisch vorkommt ist:
>
> ```php
> ... ,tt_products_cat.email_uid email_uid
> FROM tt_products_cat tt_products_cat
> WHERE ...
> ```
>
> wieso stehen email_uid und tt_products_cat jeweils doppelt?
> Vielleicht ist das der Fehler?

Beides.
Das eine tt_products_cat muß vor .sorting verschoben werden.
Muß dann "tt_products_cat.sorting" heißen.

### [#9](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/9) · febo · 2007-02-19

Hi extension22,

> Beides.
> Das eine tt_products_cat muß vor .sorting verschoben werden.
> Muß dann "tt_products_cat.sorting" heißen.

tja... die Frage ist nur wie, ohne an dem sourcecode der tt_products rumzuschrauben.

### [#10](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/10) · extension22 · 2007-02-19

> **febo schrieb:**
>
> tja... die Frage ist nur wie, ohne an dem sourcecode der tt_products rumzuschrauben.

Vielleicht den Autor auf den Bug aufmerksam machen?

### [#11](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/11) · febo · 2007-02-19

Hi,

entlang dem **debug_backtrace** habe ich mich zur **class.tx_ttproducts_category.php** und dann zur **class.tx_table.php** zurück gearbeitet.

Erstere übergibt an Zweite einen sql-string welcher auch den **orderBy** Parameter enthält.

Die zweite class übergibt den Wert an die Function **transformOrderby($clause)** und diese macht Problem. Zuerst wird der String nach **Kommas** getrennt und den Variablen **$field** sowie **$order** zugewiesen (in $field befindet sich nun "sorting"). Danach wird versucht die Variable **$field** nach **Punkten** zu trennen, was ja in diesem Falle eines Wortes nicht klappen sollten.

TUT es Aber: string(7) "sorting" array(1) { [0]=>  string(7) "sorting" }

Aus diesem Grund wird nun versucht vor **sorting** die notwendige Tabelle zusammen mit einem Punkt zu hängen.

```php
$fieldArray = t3lib_div::trimExplode ('.', $field);
// no table has been specified?
if (count($fieldArray) == 1 && $this->tableFieldArray[$field] )	{
   $tableName = key($this->tableFieldArray[$field]);
   $fieldTmp = $this->aliasArray[$tableName].'.'.$field;
} else {
   $fieldTmp = $field;
}
$rcArray[] = $fieldTmp.($order ? ' '.$order : '');

...
```

Ich habe erlich gesagt keine Ahnung warum er diesen String trennen kann, wo doch kein Punkt im String vorkommt?

Irgendjemand eine Ahnung?

Gruß

febo[/b]

### [#12](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/12) · steffenk · 2007-02-19

sprich Flink doch direkt an (im Shopforum, also hier :D ) oder per PN) - er ist der Autor des Shops und hier im Forum aktiv.

### [#13](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/13) · febo · 2007-02-21

Hi steffenk,

hab den Fehler noch nicht beheben können und werde deinen Rat befolgen. Danke

### [#14](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/14) · febo · 2007-03-07

hi typo3´ler

nun habe ich noch einmal von vorne begonnen und stehe wieder vor dem gleichen Problem. Allerdings fehlt die Tabelle nun nicht in der ORDER BY Anweisung sondern gleich oben beim SELECT (siehe Zeile 11).

```php
caller
t3lib_DB::exec_SELECTquery


ERROR
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.pid ,.category ,.price ,.price2 ,.tax ,.inStock ,.image ,.note ,.size ,.color
' at line 1


lastBuiltQuery
SELECT .uid ,.pid ,.category ,.price ,.price2 ,.tax ,.inStock ,.image ,.note ,.size ,.color
FROM tt_products products LEFT OUTER JOIN tt_products_cat tt_products_cat ON tt_products_cat.uid=products.category
WHERE
products.pid IN (25) AND 1=1 AND (products.inStock <> 0) AND products.deleted=0 AND products.hidden=0 AND (products.starttime<=1173293786) AND (products.endtime=0 OR products.endtime>1173293786) AND products.fe_group IN (' ',0,-1)
ORDER BY tt_products_cat.sorting
LIMIT 51


debug_backtrace
require // include // TSpagegen::renderContent // tslib_cObj->cObjGet // tslib_cObj->cObjGetSingle // tslib_cObj->USER // tslib_cObj->callUserFunction // call_user_method // tx_templavoila_pi1->main_page // tx_templavoila_pi1->renderElement // tx_templavoila_pi1->processDataValues // tslib_cObj->cObjGet // tslib_cObj->cObjGetSingle // tslib_cObj->RECORDS // tslib_cObj->cObjGetSingle // tslib_cObj->cObjGetSingle // tslib_cObj->CASEFUNC // tslib_cObj->cObjGetSingle // tslib_cObj->COBJ_ARRAY // tslib_cObj->cObjGet // tslib_cObj->cObjGetSingle // tslib_cObj->CASEFUNC // tslib_cObj->cObjGetSingle // tslib_cObj->CASEFUNC // tslib_cObj->cObjGetSingle // tslib_cObj->cObjGetSingle // tslib_cObj->USER // tslib_cObj->callUserFunction // call_user_method // tx_ttproducts_pi1->main // tx_ttproducts_pi1->doProcessing // tx_ttproducts_pi1->products_display // tx_ttproducts_list_view->printView // t3lib_DB->exec_SELECT_queryArray // t3lib_DB->exec_SELECTquery // t3lib_DB->debug
```

Bei der Neuinstallation bin ich nach dem Tutorial vorgegangen, habe eine neue Seite namens "Produkte" erstellt und darin ein Extension Template "ext+" angelegt. Hier habe ich, wie beschrieben, mein Template für den shop eingetragen.

Leider sagt das Tutorial nichts über die gewählten Inhalte unter "Include static (from extensions):". Dort habe ich folgende Inhalte gewählt:

Static Info Table
FE User Registration (CSS-Styled)
Shop System Old Style

Wähle ich statt "Shop System Old Style" "Shop System Test" wird im Front End nichts angezeigt. Bei Old Style kommen die Fehlermeldungen.

Leider bin ich nach fast zwei Wochen (nicht Ständig) rumprobieren mit meinem Latain am Ende. Ich habe überhaupt keine Ahnung wo ich den Fehler suchen sollen. Ist es nun ein Fehler bei der Installation und Einrichtung oder sind meim PHP und / oder MySql (siehe weiter oben) nicht kompatibel.

Für Hilfe bin ich sehr Dankbar.

Gruß

febo

### [#15](https://www.typo3.net/d/58063-mysql-fehler-where-1-1/15) · honigferd · 2007-08-15

Dasselbe Problem wurmt mich derzeit auch - aber weitergekommen bin ich leider ebensowenig.

Gruß,
Stefan

---

Quelle: „MySql Fehler "Where 1 = 1" ?“, typo3.net, https://www.typo3.net/d/58063-mysql-fehler-where-1-1
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
