Franz Holzinger

Verse of the day

Denn es ist ein Gott und ein Mittler zwischen Gott und den Menschen, nämlich der Mensch Christus Jesus, der sich selbst gegeben hat für alle zur Erlösung, daß solches zu seiner Zeit gepredigt würde;
1 Timotheus 2:5-6

© Bible Gateway's Verse of the Day


autor  
18-06-14 20:23:52 Produkte werden im Frontend nicht angezeigt
Josef Spitzlberger
Hallo beieinander,
ich bin ziemlich am verzweifeln. Ich haeb jetzt schon mehrere Tutorials durchgearbeitet und alles zig mal kontrolliert. Aber ich bekomme einfach keine Produkte im Frontend angezeigt.
So sieht es aktuell aus: http://www.la-gondola-barocca.de/lgb-buchungsshop/angebote/
zwei Produkte habe ich erfasst und mit Mengen > 1 ausgestattet.
Wo kann ich denn noch nachsehen, um den Fehler zu finden?
Oder: Was benötigt ihr an Angaben um mir ggf. helfen zu können?
Herzlichen Dank
Viele Grüße

Sepp
18-06-14 20:32:54 pid_list
Franz Holzinger
Vermutlich ist pid_list falsch gesetzt oder ein Fehler in der Aktivierung einer alternativen Sprache.
Es gibt am Ende des Manuals eine Checkliste, die man durchgehen sollte.
Es soll tt_products 2.7.11 verwendet werden.
19-06-14 10:19:37 pidlist
Josef Spitzlberger
Guten Morgen,

ja, die Checkliste habe ich schon einige Mal durch. ich übersehe irgendwas ...

Alternative Sprachen habe ich keine.

mein Seitenaufbau schaut so aus: http://www.la-gondola-barocca.de/fileadmin/extern/LGB-tt-products.jpg

Im template steht zu den PIDs folgendes:

plugin.tt_products.rootPageID = 170
plugin.tt_products.rootDAMCategoryID = 170
plugin.tt_products.rootCategoryID = 170
plugin.tt_products.PIDagb = 26
plugin.tt_products.PIDrevocation = 26
plugin.tt_products.PIDstoreRoot = 170
plugin.tt_products.PIDbasket = 161
plugin.tt_products.PIDsearch = 168
plugin.tt_products.PIDitemDisplay = 160
plugin.tt_products.PIDlistDisplay = 166
plugin.tt_products.PIDpayment = 162
plugin.tt_products.PIDdelivery = 163
plugin.tt_products.PIDbilling = 163
plugin.tt_products.PIDfinalize = 163
plugin.tt_products.pid_list = 166, 172

Was muss denn in pid_list stehen?

ich bin mittlerweile blind ...

herzlichen Dank!
Viele Grüße

Sepp
20-06-14 08:20:55 pid_list
Franz Holzinger
pid_list muss die Seiten-Ids der Sysfolder/Seiten mit den Produkten enthalten (durch Komma getrennt).

storeRootPid sollte nicht gesetzt werden.

Verwenden Sie zu Beginn das tt_products beigelegte Beispiel HTML Template.
Gehen Sie nach der Anleitung im eBook "Der TYPO3 Webshop" vor.
20-06-14 22:13:49 pid_list
Josef Spitzlberger
Vielen Dank für die prompten Antworten.

leider hat das alles nichts geholfen. pid_list ist richtig. Templates habe ich durchprobiert. Datensatzsammlung zusätzlich gesetzt. Tutorials, Checklisten und jetzt auch das ebook durchgearbeitet.

es ändert nix. keine Produkte ....

Bin am Verzweifeln und kurz vor dem Aufgeben.
Grüße
Sepp
20-06-14 22:37:25 error_log
Franz Holzinger
Steht etwas in der PHP error_log Datei?
Es reicht die Anleitung im EBook aus. Einige andere Tutorials machen sehr schlechte Vorschläge, von denen ich dringend abrate.

Die Ausgabe im Frontend sieht völlig verkehrt aus. Was passiert, wenn im HTML Shop Template ###ITEM_LIST_TEMPLATE### probeweise Texte eingetragen werden? Erscheinen diese dann auch im Frontend?
21-06-14 19:46:12 test-Texte
Josef Spitzlberger
ich habe die error.log jetzt aktiviert. Es wird aber keine Fehler ausgegeben bzw. die Datei wird erst gar nicht angelegt. Ich hatte Ausgabe im Browser eingestellt. PHP Fehler wurden aber nie ausgegeben.

jetzt habe ich wieder das example_template_bill_de.tmpl als Template aktiviert und auch einen Testtext ausgegeben. Das funktioniert. produkte werden weiterhin nicht angezeigt.

Ins Backend schauen? Daten per PN möglich?

Vielen, vielen dank!
21-06-14 20:17:50 Ausgangspunkt | debug_mysql_db
Franz Holzinger
Beim Shop Plugin darf entweder kein Ausgangspunkt gesetzt sein, oder er muss auch den Produkte und Kategorie Sysfolder umfassen. Es ist einfacher, nur mit pid_list im Setup/Constants zu arbeiten.

Zum Schluss gibt es noch die Möglichkeit, die erzeugte SQL Anweisung der Produktliste anzeigen zu lassen.
Dazu muss die Extension debug_mysql_db und ev. auch fh_debug installiert sein.
Im Extension Manager von debug_mysql_db noch das einstellen:
Output [basic.OUTPUT]
debug
Add Backtrace [basic.BTRACE_SQL]
1
TYPO3 Mode [basic.TYPO3_MODE]
FE

fh_debug:
Typo3 Mode [basic.TYPO3_MODE]
FE
IP address of the client browser [basic.IPADDRESS]
*
debug file [basic.DEBUGFILE]
fileadmin/debug.html

Danach in der Datei fileadmin.debug.html nach der SELECT Anweisung suchen und ansehen.
Ev. gibt es einen SELECT ERROR?
22-06-14 12:20:34 Neuaufbau - leider immer noch erfolglos
Josef Spitzlberger
Guten Morgen,
ich habe heute die Extension gelöscht, Seiten alle gelöscht. Datenbank-Tabellen zu tt_products bereinigt und dann alles neu aufgebaut nach ebook.

Ergebnis: wie vorher. Es werden keine Produkte angezeigt.
Dann habe nich mal auf die Seite mit dem Plugin ein Produkt erfasst. pid_list entfernt, Datensatzsammlung geleert. Und wieder wird kein Produkt angezeigt.

Aktuell ist pid_list gesetzt. Datensatzsammlung (Ausgangspunkt) ist nicht gesetzt. Alles andere Standard und nach ebook.

Die SQL-Debugs habe ich jetzt noch nicht eingebaut. Daran mache ich mich jetzt dann noch. Wenn es keine andere Lösung gibt ...
22-06-14 12:59:55 Debug
Josef Spitzlberger
hier steht das Ergebins des SQL-Debugs

http://www.la-gondola-barocca.de/fileadmin/debug.html

http://www.la-gondola-barocca.de/fileadmin/phpDebugErrorLog.txt

Können Sie da etwas erkennen?

Ich habe aktuell zwei Sysordner mit Produkten. Jeweils mit 2 Produkten, keine Kategorien, etc. Die beiden SysOrdner habe ich in der pid_list angegeben. Wenn ich die SQL-Statements richtig interpretieren, findet er keine Produkte, oder?

23-06-14 09:01:09 debug
Franz Holzinger
Es gibt zu viele Debug Ausgaben für die debug.html.
Deshalb aktivieren Sie unter fh_debug die

debugBegin required [basic.DEBUGBEGIN]
Ja

Append [basic.APPENDDEPTH]
0

In der Datei
tt_products/control/class.tx_ttproducts_main.php
soll am Beginn der "function init"
debugBegin();
und am Ende dieser Funktion
debugEnd();
eingetragen werden.
--------------------
debugEnd();
return TRUE;
} // init
---------------------

Damit werden nur noch die PHP Ausgaben innerhalb des tt_products Aufrufs angezeigt.


Aber ich habe der PHP Debug Datei etwas gefunden (Achtung: Dies ist nicht die PHP error_log, sondern das stammt von fh_debug.) Siehe Ende des Posts.

Das bedeutet aber, dass eine Sprache aktiviert worden ist!
productslang.sys_language_uid=1

tt_products sucht Produkte und Kategorien für die Sprache mit der sys_language_uid=1. Diese gibt es nicht. Deshalb wird nichts ausgegeben.

Stellen Sie das Setup um (config.sys_language_uid=0 ). Oder legen Sie Produkte und Kategorien in Sprache mit L=1 an.


---------------------------
<table><tr><td>DatabaseConnection.php</td><td>294</td><td>myDebug</td></tr><tr><td>DatabaseConnection.php</td><td>753</td><td>callDebugger</td></tr><tr><td>DatabaseConnection.php</td><td>765</td><td>debug</td></tr></table>|function/mode|Pg176 exec_SELECTquery(tt_products products,tt_products_language productslang) - class.tx_ttproducts_list_view.php#599->exec_SELECT_queryArray // class.tx_table_db.php#1374->exec_SELECTquery // class.tx_table_db.php#1278->exec_SELECTquery|
SQL query|SELECT count(*) FROM tt_products products,tt_products_language productslang WHERE products.uid = productslang.prod_uid AND productslang.pid IN(172,175)AND 1=1 AND(products.inStock > 0)AND productslang.sys_language_uid=1 AND productslang.deleted=0 AND productslang.hidden=0 AND(productslang.starttime<=1403434336)AND(productslang.endtime=0 OR productslang.endtime>1403434336)AND productslang.fe_group IN(' ',0,-1) AND productslang.sys_language_uid=1|
num_rows()|1|


-----------------
|function/mode|Pg176 exec_SELECTquery(tt_products products LEFT OUTER JOIN tt_products_cat tt_products_cat ON tt_products_cat.uid=products.category,tt_products_cat_language tt_products_cat_language,tt_products_language productslang) - class.tx_ttproducts_list_view.php#808->exec_SELECT_queryArray // class.tx_table_db.php#1374->exec_SELECTquery // class.tx_table_db.php#1278->exec_SELECTquery|
SQL query|SELECT DISTINCT products.uid uid,productslang.pid pid,products.category category,products.price price,products.price2 price2,products.directcost directcost,products.graduated_price_uid graduated_price_uid,products.tax tax,products.inStock inStock,products.datasheet datasheet,products.unit_factor unit_factor,products.weight weight,productslang.title title,products.image image,products.size size,products.delivery delivery,products.bulkily bulkily,products.special_preparation special_preparation,products.additional additional FROM tt_products products LEFT OUTER JOIN tt_products_cat tt_products_cat ON tt_products_cat.uid=products.category,tt_products_cat_language tt_products_cat_language,tt_products_language productslang WHERE products.uid = productslang.prod_uid AND productslang.pid IN(172,175)AND products.uid = productslang.prod_uid AND 1=1 AND(products.inStock > 0)AND productslang.sys_language_uid=1 AND productslang.deleted=0 AND productslang.hidden=0 AND(productslang.starttime<=1403434549)AND(productslang.endtime=0 OR productslang.endtime>1403434549)AND productslang.fe_group IN(' ',0,-1) AND productslang.sys_language_uid=1 ORDER BY tt_products_cat_language.sorting,productslang.title LIMIT 51|
num_rows()|0|
debug_backtrace|require(typo3_src-6.1.6/typo3/sysext/cms/tslib/index_ts.php),index.php#41 // TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->INTincScript#204 // TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->recursivelyReplaceIntPlaceholdersInContent#3406 // TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->INTincScript_process#3428 // TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->USER#3480 // TYPO3\CMS\Frontend\ContentObject\UserContentObject->render#904 // TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->callUserFunction#55 // call_user_func_array#6441 // tx_ttproducts_pi1_base->main# // tx_ttproducts_main->run#73 // tx_ttproducts_main->products_display#535 // tx_ttproducts_list_view->printView#1121 // tx_table_db->exec_SELECT_queryArray#808 // tx_table_db->exec_SELECTquery#1374 // Geithware\DebugMysqlDb\Database\DatabaseConnection->exec_SELECTquery#1278 // Geithware\DebugMysqlDb\Database\DatabaseConnection->myDebug#294|
miliseconds|0.486|
24-06-14 07:16:32 Sprache
Josef Spitzlberger
zunächst: Vielen, vielen Dank.

Aber das ist ja komisch. Ich habe nur eine Sprache: de
Nur die hat die ID 1 und nicht 0. Da muss ich jetzt intensiver reinschauen.

Auf die Schnelle habe ncih jetzt eine alternative Sprache für ein Proidukt angelegt mit Sprache de ( = 1). Wird aber auch nicht angezeigt ...
24-06-14 07:43:19 Es funktioniert!!
Josef Spitzlberger
Hallo Herr Holzinger,

so, jetzt werden die Produkte angezeigt. Es lag an der Sprache und damit war natürlich Ihre Checkliste eigentlich der Schlüssel. Nur hätte ich in der Sprache nie den Grund vermutet, da ich mir der Unstimmigkeiten nicht bewusst war. Dazu bin ich dann doch nicht Typo3-Profi genug.

Jedenfalls: Vielen, vielen Dank!!! Das war super Service!

Wenn Sie mal in München sind, dann kommen Sie doch zum Gondelfahren vorbei.

ich vermute, dass das nicht mein letzter Thread in diesem Forum bleiben wird

Viele Grüße

Josef Spitzlberger
< Zurück zum Forum