#2388 closed Bug/Fehler (fixed)
Warning in /admin/includes/modules/export/products_export.php
| Reported by: | noRiddle | Owned by: | somebody |
|---|---|---|---|
| Priority: | normal | Milestone: | modified-shop-2.0.8.0 |
| Component: | Admin | Version: | 2.0.7.2 |
| Keywords: | Cc: | ||
| Blocked By: | Blocking: |
Description
Folgendes Warning erscheint beim Export:
[2022-11-10 17:46:36][warning][modified][pid:425520] WARNING found for URL: /admin/module_export.php?set=export&module=products_export&action=save [2022-11-10 17:46:36][warning][modified][pid:425520] Trying to access array offset on value of type null in File: /PATH/admin/includes/modules/export/products_export.php on Line: 142
War schwer nachzuvollziehen warum das Warning ausgegeben wird.
Ich denke, daß in der Funktion buildCAT() anstatt
while ($this->getParent($catID) != 0 || $catID != 0) {
dies ausreichend sein würde
while ($catID != 0) {
und das OR zu unerwarteten Ergebnissen führt.
Ich verstehe das OR logisch auch nicht, was an mir liegen kann.
Gruß,
noRiddle
Attachments (0)
Change History (3)
comment:1 by , 3 years ago
comment:3 by , 3 years ago
Ja, ich weiß, daß in Zeile 142 steht was du schreibst.
Die Funktion zu der die Zeile gehört wird jedoch im von mir zitierten while-Loop als Condition aufgerufen. Da sie als erste Condition steht kann es passieren, daß "der SQL kein Ergebnis liefert", da $catID auch 0 sein kann.
Durch die sog. "lazy evaluation" ergibt die gesante Condtion bereits true wenn die erste Condition true ergibt und die zweite wird dann erst gar nicht geprüft. Wenn die erste jedoch bereits failed, weil dann eben der Fehler geworfen wird scheint die zweite zwar ausgeführt zu werden, der Fehler ist jedoch trotzdem vorhanden.
$catID != 0 im while reicht völlig, kann es nie zum Aufruf der Funcktion getParent() mit 0 als Parameter kommen.
...wenn ich mich nicht irre...
Gruß,
noRiddle

Zeile 142 ist aber das hier:
Ich gehe davon aus, dass es $parent_data betrifft und der SQL kein Ergebnis liefert.