Fatal Error beim Aufruf eines Artikels
Fatal Error beim Aufruf eines Artikels
Hallo r23
Ich bin dabei den bestehenden Webshop auf einen neuen Server zu zügeln.
Dabei verwende ich neu folgendes:
- Windows 2008 Web Edition
- PHP 5.3.0
- MySQL 5.1.37
Problem:
Die Startseite lässt sich problemlos aufrufen. Wähle ich nun eine Kategorie an, dann erscheinen mir sämtliche Artikel. Soweit, sogut......
Wenn ich nun jedoch einen Artikel auswähle, dann erscheint mir folgende Fehlermeldung:
Fatal error: Call to a member function RecordCount() on a non-object in C:\inetpub\wwwroot\webshop\shop\includes\modules\slavery_listing.php on line 33
Die Zeile 33 von slavery_listing.php (rot markiert):
$define_list = array('PRODUCT_LIST_MODEL' => SLAVE_LIST_MODEL,
'PRODUCT_LIST_NAME' => SLAVE_LIST_NAME,
'PRODUCT_LIST_MANUFACTURER' => SLAVE_LIST_MANUFACTURER,
'PRODUCT_LIST_PRICE' => SLAVE_LIST_PRICE,
'PRODUCT_LIST_QUANTITY' => SLAVE_LIST_QUANTITY,
'PRODUCT_LIST_WEIGHT' => SLAVE_LIST_WEIGHT,
'PRODUCT_LIST_IMAGE' => SLAVE_LIST_IMAGE,
'PRODUCT_SLAVE_BUY_NOW' => SLAVE_LIST_BUY_NOW);
Woran könnte das liegen? Habe lediglich die Versionen von MySQL und PHP auf den aktuellsten Stand gebracht, ansonsten ist alles gleich wie beim funktionierenden Server (denke ich zumindest....). Bin langsam am verzweifeln..... ;(
Gruss
Päde
Ich bin dabei den bestehenden Webshop auf einen neuen Server zu zügeln.
Dabei verwende ich neu folgendes:
- Windows 2008 Web Edition
- PHP 5.3.0
- MySQL 5.1.37
Problem:
Die Startseite lässt sich problemlos aufrufen. Wähle ich nun eine Kategorie an, dann erscheinen mir sämtliche Artikel. Soweit, sogut......
Wenn ich nun jedoch einen Artikel auswähle, dann erscheint mir folgende Fehlermeldung:
Fatal error: Call to a member function RecordCount() on a non-object in C:\inetpub\wwwroot\webshop\shop\includes\modules\slavery_listing.php on line 33
Die Zeile 33 von slavery_listing.php (rot markiert):
$define_list = array('PRODUCT_LIST_MODEL' => SLAVE_LIST_MODEL,
'PRODUCT_LIST_NAME' => SLAVE_LIST_NAME,
'PRODUCT_LIST_MANUFACTURER' => SLAVE_LIST_MANUFACTURER,
'PRODUCT_LIST_PRICE' => SLAVE_LIST_PRICE,
'PRODUCT_LIST_QUANTITY' => SLAVE_LIST_QUANTITY,
'PRODUCT_LIST_WEIGHT' => SLAVE_LIST_WEIGHT,
'PRODUCT_LIST_IMAGE' => SLAVE_LIST_IMAGE,
'PRODUCT_SLAVE_BUY_NOW' => SLAVE_LIST_BUY_NOW);
Woran könnte das liegen? Habe lediglich die Versionen von MySQL und PHP auf den aktuellsten Stand gebracht, ansonsten ist alles gleich wie beim funktionierenden Server (denke ich zumindest....). Bin langsam am verzweifeln..... ;(
Gruss
Päde
Hallo r23
Hier die Log-Datei....
Ich hoffe, dass du da etwas herausfinden kannst......
Andernfalls muss ich MySQL downgraden. Falls ja, kannst du mir sagen welche Version du empfehlen würdest?
Habe gesehen, dass nebst dieser Fehlermeldung auch noch andere erscheinen:
Deprecated: Function ereg() is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\oos_define.php on line 73
Deprecated: Assigning the return value of new by reference is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\classes\adodb\adodb.inc.php on line 893
Deprecated: Assigning the return value of new by reference is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\classes\adodb\adodb.inc.php on line 1919
Deprecated: Assigning the return value of new by reference is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\classes\adodb\adodb.inc.php on line 1991
Deprecated: Assigning the return value of new by reference is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\oos_system.php on line 25
Deprecated: Function split() is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\blocks\block_categories.php on line 176
Fatal error: Call to a member function RecordCount() on a non-object in C:\inetpub\wwwroot\webshop\shop\includes\modules\slavery_listing.php on line 33
Gruss
Päde
Hier die Log-Datei....
Ich hoffe, dass du da etwas herausfinden kannst......
Andernfalls muss ich MySQL downgraden. Falls ja, kannst du mir sagen welche Version du empfehlen würdest?
Habe gesehen, dass nebst dieser Fehlermeldung auch noch andere erscheinen:
Deprecated: Function ereg() is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\oos_define.php on line 73
Deprecated: Assigning the return value of new by reference is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\classes\adodb\adodb.inc.php on line 893
Deprecated: Assigning the return value of new by reference is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\classes\adodb\adodb.inc.php on line 1919
Deprecated: Assigning the return value of new by reference is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\classes\adodb\adodb.inc.php on line 1991
Deprecated: Assigning the return value of new by reference is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\oos_system.php on line 25
Deprecated: Function split() is deprecated in C:\inetpub\wwwroot\webshop\shop\includes\blocks\block_categories.php on line 176
Fatal error: Call to a member function RecordCount() on a non-object in C:\inetpub\wwwroot\webshop\shop\includes\modules\slavery_listing.php on line 33
Gruss
Päde
Hallo,
Die SQL - Abfragen über drei Datenbanktabllen müssen in der Version geändert werden.
Am einfachsten Version 1.6.15 downloaden und mit WinMerge http://winmerge.org/ die Unterschiede untersuchen
und die "richtigen" Sachen übernehmen.
zu den PHP Hinweisen
Deprecated: Function ereg()
Die kann man deaktivieren oder im Skript ändern.
Eine Anleitung im Forum 2.1 und im PHP Handbuch
http://www.oos-shop.de/doc/php_manual_d ... dices.html
of new by reference is deprecated in C:~\adodb\adodb.inc.php on line 1991
Adodb in einer aktuellen PHP 5.x Version installieren.
http://adodb.sourceforge.net/
Beste Grüße
Ralf
Die SQL - Abfragen über drei Datenbanktabllen müssen in der Version geändert werden.
Suchen nach: LEFT JOIN
~/shop\includes\blocks\block_manufacturer_info.php(30): FROM " . $oosDBTable['manufacturers] . " m LEFT JOIN
~/shop\includes\classes\class_member.php(83): " . $oosDBTable['customers] . " as c LEFT JOIN
~/shop\includes\classes\class_order.php(219): " . $oosDBTable['address_book] . " ab LEFT JOIN
~/shop\includes\classes\class_order.php(221): ON (ab.entry_zone_id = z.zone_id) LEFT JOIN
~/shop\includes\classes\class_order.php(237): " . $oosDBTable['address_book] . " ab LEFT JOIN
~/shop\includes\classes\class_order.php(239): ON (ab.entry_zone_id = z.zone_id) LEFT JOIN
~/shop\includes\classes\class_order.php(254): " . $oosDBTable['address_book] . " ab LEFT JOIN
~/shop\includes\classes\class_order.php(256): ON (ab.entry_zone_id = z.zone_id) LEFT JOIN
~/shop\includes\classes\adodb\docs\tips_portable_sql.htm(120): <pre>SELECT t1.col1, t1.col2, t2.cola <br> FROM t1 <i>LEFT JOIN</i> t2 ON t1.col = t2.col</pre>
~/shop\includes\classes\adodb\drivers\adodb-pdo_pgsql.inc.php(140): // LEFT JOIN would have been much more elegant, but postgres does
~/shop\includes\classes\adodb\drivers\adodb-postgres64.inc.php(492): // LEFT JOIN would have been much more elegant, but postgres does
~/shop\includes\classes\adodb\drivers\adodb-postgres7.inc.php(82): LEFT JOIN pg_description ds ON (ds.objoid = c.oid)
~/shop\includes\functions\function_kernel.php(440): " . $oosDBTable['tax_rates] . " tr LEFT JOIN
~/shop\includes\functions\function_kernel.php(442): ON (tr.tax_zone_id = za.geo_zone_id) LEFT JOIN
~/shop\includes\functions\function_kernel.php(489): " . $oosDBTable['tax_rates] . " tr LEFT JOIN
~/shop\includes\functions\function_kernel.php(491): ON (tr.tax_zone_id = za.geo_zone_id) LEFT JOIN
~/shop\includes\modules\new_products.php(34): " . $oosDBTable['products_description] . " pd LEFT JOIN
~/shop\includes\modules\new_products.php(46): " . $oosDBTable['products_description] . " pd LEFT JOIN
~/shop\includes\modules\slavery_products.php(91): FROM " . $oosDBTable['products] . " p LEFT JOIN
~/shop\includes\modules\slavery_products.php(92): " . $oosDBTable['manufacturers] . " m ON p.manufacturers_id = m.manufacturers_id LEFT JOIN
~/shop\includes\pages\account\history.php(33): FROM " . $oosDBTable['orders] . " o LEFT JOIN
~/shop\includes\pages\account\history.php(34): " . $oosDBTable['orders_total] . " ot ON (o.orders_id = ot.orders_id) LEFT JOIN
~/shop\includes\pages\affiliate\clicks.php(44): FROM " . $oosDBTable['affiliate_clickthroughs] . " a LEFT JOIN
~/shop\includes\pages\affiliate\clicks.php(45): " . $oosDBTable['products] . " p ON (p.products_id = a.affiliate_products_id) LEFT JOIN
~/shop\includes\pages\affiliate\sales.php(41): FROM " . $oosDBTable['affiliate_sales] . " a LEFT JOIN
~/shop\includes\pages\affiliate\sales.php(42): " . $oosDBTable['orders] . " o ON (a.affiliate_orders_id = o.orders_id) LEFT JOIN
~/shop\includes\pages\affiliate\summary.php(62): LEFT JOIN " . $oosDBTable['orders] . " o
~/shop\includes\pages\checkout\process.php(141): FROM " . $oosDBTable['products] . " p LEFT JOIN
~/shop\includes\pages\checkout\process.php(142): " . $oosDBTable['products_attributes] . " pa ON p.products_id = pa.products_id LEFT JOIN
~/shop\includes\pages\checkout\process.php(207): " . $oosDBTable['products_attributes] . " pa LEFT JOIN
~/shop\includes\pages\checkout\process.php(219): " . $oosDBTable['products_attributes] . " pa LEFT JOIN
~/shop\includes\pages\main\shop.php(296): FROM " . $oosDBTable['products] . " p LEFT JOIN
~/shop\includes\pages\main\shop.php(315): FROM " . $oosDBTable['products] . " p LEFT JOIN
~/shop\includes\pages\main\shop.php(348): FROM " . $oosDBTable['products] . " p LEFT JOIN
~/shop\includes\pages\main\shop.php(368): " . $oosDBTable['products] . " p LEFT JOIN
~/shop\includes\pages\main\shop.php(369): " . $oosDBTable['manufacturers] . " m ON p.manufacturers_id = m.manufacturers_id LEFT JOIN
~/shop\includes\pages\news\reviews.php(43): FROM " . $oosDBTable['news_description] . " nd LEFT JOIN
~/shop\includes\pages\products\new.php(56): FROM " . $oosDBTable['products] . " p LEFT JOIN
~/shop\includes\pages\products\new.php(57): " . $oosDBTable['manufacturers] . " m ON p.manufacturers_id = m.manufacturers_id LEFT JOIN
~/shop\includes\pages\products\new.php(58): " . $oosDBTable['products_description] . " pd ON p.products_id = pd.products_id AND pd.products_languages_id = '" . intval($nLanguageID) . "' LEFT JOIN
~/shop\includes\pages\products\pdf_info.php(39): FROM " . $oosDBTable['products] . " p LEFT JOIN
~/shop\includes\pages\products\pdf_info.php(41): " . $oosDBTable['products_description] . " pd LEFT JOIN
~/shop\includes\pages\products\popup_image.php(66): FROM " . $oosDBTable['products] . " p LEFT JOIN
~/shop\includes\pages\reviews\product.php(43): FROM " . $oosDBTable['products_description] . " pd LEFT JOIN
~/shop\includes\pages\search\advanced_result.php(223): $from_str = "FROM " . $oosDBTable['products] . " p LEFT JOIN
~/shop\includes\pages\search\advanced_result.php(224): " . $oosDBTable['manufacturers] . " m using(manufacturers_id) LEFT JOIN
~/shop\includes\pages\search\advanced_result.php(232): $from_str .= " LEFT JOIN
~/shop\includes\pages\search\advanced_result.php(234): ON p.products_tax_class_id = tr.tax_class_id LEFT JOIN
~/shop\includes\pages\search\quickfind.php(40): LEFT JOIN ' .
Es wurden 49 Vorkommen in 23 Datei(en) gefunden.
Am einfachsten Version 1.6.15 downloaden und mit WinMerge http://winmerge.org/ die Unterschiede untersuchen
und die "richtigen" Sachen übernehmen.
zu den PHP Hinweisen
Deprecated: Function ereg()
Die kann man deaktivieren oder im Skript ändern.
Eine Anleitung im Forum 2.1 und im PHP Handbuch
http://www.oos-shop.de/doc/php_manual_d ... dices.html
of new by reference is deprecated in C:~\adodb\adodb.inc.php on line 1991
Adodb in einer aktuellen PHP 5.x Version installieren.
http://adodb.sourceforge.net/
Beste Grüße
Ralf
Startseite Adminbereich wird nicht komplett übersetzt
Hallo Ralf
Habe deinen Input so umgesetzt und fahre nun mit der Version 1.6.16.....
Auf den ersten Blick sieht es so aus als ob nun alles funktioniert. Lediglich die Startseite des Adminbereiches wird nicht komplett übersetzt (siehe Bild). Leider versuche ich seit etwa 2 Stunden vergeblich den Fehler zu finden. Das Einzige was ich herausfinden konnte ist, dass die fehlenden Übersetzungen in der Datei \shop\admin\includes\languages\deu\index.php liegen. Mit WinMerge habe ich jedoch nicht herausfinden können wo der Fehler resp. die Differenz liegt....
Kannst du mir hier vielleicht noch einen Tipp geben?
Besten Dank
Päde
Habe deinen Input so umgesetzt und fahre nun mit der Version 1.6.16.....
Auf den ersten Blick sieht es so aus als ob nun alles funktioniert. Lediglich die Startseite des Adminbereiches wird nicht komplett übersetzt (siehe Bild). Leider versuche ich seit etwa 2 Stunden vergeblich den Fehler zu finden. Das Einzige was ich herausfinden konnte ist, dass die fehlenden Übersetzungen in der Datei \shop\admin\includes\languages\deu\index.php liegen. Mit WinMerge habe ich jedoch nicht herausfinden können wo der Fehler resp. die Differenz liegt....
Kannst du mir hier vielleicht noch einen Tipp geben?
Besten Dank
Päde
hallo,
in ein paar Tagen veröffentlichen wir die 1.6.17. hier solltest du Änderungenn die
~/shop/includes/pages/rewies/produc_info.php
und
~/shop/includes/pages/checkout/susecc.php
in den Shop übernehmen.
Für PHP 5.3 musst du die
~/shop/admin/includes/oos_main.php
vermutlich ändern.
http://svn.berlios.de/viewvc/oos/trunk/ ... 407&r2=320
Bitte bei neuen Fragen ein neues Thema beginnen.
Beste Grüße
ralf
in ein paar Tagen veröffentlichen wir die 1.6.17. hier solltest du Änderungenn die
~/shop/includes/pages/rewies/produc_info.php
und
~/shop/includes/pages/checkout/susecc.php
in den Shop übernehmen.
Für PHP 5.3 musst du die
~/shop/admin/includes/oos_main.php
vermutlich ändern.
http://svn.berlios.de/viewvc/oos/trunk/ ... 407&r2=320
Bitte bei neuen Fragen ein neues Thema beginnen.
Beste Grüße
ralf
Hallo Ralf
Ich habe ja nun den Shop Version 1.6.3 auf die Version 1.6.16 angehoben. Dabei muss ich jedoch irgendetwas noch übersehen haben. Und leider finde ich den Fehler nicht selbst...
Wenn ich im Adminbereich einen neuen Artikel aufnehmen will, dann wird dieser nur halbwegs aufgenommen. Das heisst, dass er im Table "products_description" für jede Sprache eine neue Zeile aufnimmt, jedoch komischerweise mit der products_id 0 (und nicht fortlaufende Nummer). Im Table "products" wird gar nichts hinein geschrieben....
Der Artikel wird demzufolge nicht im Shop angezeigt. Wenn ich nun einen weiteren Artikel hinzufügen möchte, dann kommt mir der soeben fehlgeschlagene Artikel erneut (also sozusagen nicht eine neue leere Seite, sondern eine Art "editieren"). Die darin gemachten Änderungen werden nirgends gespeichert....
In welcher Datei könnte der Fehler stecken?
Gruss vom durchstartenden Forenmitglied
Päde
Ich habe ja nun den Shop Version 1.6.3 auf die Version 1.6.16 angehoben. Dabei muss ich jedoch irgendetwas noch übersehen haben. Und leider finde ich den Fehler nicht selbst...
Wenn ich im Adminbereich einen neuen Artikel aufnehmen will, dann wird dieser nur halbwegs aufgenommen. Das heisst, dass er im Table "products_description" für jede Sprache eine neue Zeile aufnimmt, jedoch komischerweise mit der products_id 0 (und nicht fortlaufende Nummer). Im Table "products" wird gar nichts hinein geschrieben....
Der Artikel wird demzufolge nicht im Shop angezeigt. Wenn ich nun einen weiteren Artikel hinzufügen möchte, dann kommt mir der soeben fehlgeschlagene Artikel erneut (also sozusagen nicht eine neue leere Seite, sondern eine Art "editieren"). Die darin gemachten Änderungen werden nirgends gespeichert....
In welcher Datei könnte der Fehler stecken?
Gruss vom durchstartenden Forenmitglied
Päde
Hallo,
mmh... in der 1.6. verwendet der Shop für die Erkenung der Sprachen
die Funktion oosGetLanguages() befindet sich in
~/shop/admin/includes/functions/function_kernel.php
Version der Datei ist
in der Datei
~/shop/admin/produtsc.php Zeile 282
würde ich nach
mir den Inhalt von $languages ausgeben lassen.
z.b. mit var_dump
http://www.oos-shop.de/doc/php_manual_d ... -dump.html
oder print_r
Hier sollten die verwendeten Sprachen entahlten sein?
Evtl. gibt es ein Datenbankproblem. Hierbei würde der Shop in die
~/oos_temp/log/adodb_error.log
etwas sinnvolles schreiben.
Grüße
Ralf
mmh... in der 1.6. verwendet der Shop für die Erkenung der Sprachen
Code: Alles auswählen
$languages = oosGetLanguages();
for ($i = 0, $n = count($languages); $i < $n; $i++) {
$lang_id = $languages[$i]['id];
~/shop/admin/includes/functions/function_kernel.php
Version der Datei ist
Code: Alles auswählen
$Id: function_kernel.php,v 1.5 2006/11/19 10:14:55 r23 Exp $
~/shop/admin/produtsc.php Zeile 282
würde ich nach
Code: Alles auswählen
$languages = oosGetLanguages();
z.b. mit var_dump
http://www.oos-shop.de/doc/php_manual_d ... -dump.html
oder print_r
Code: Alles auswählen
$languages = oosGetLanguages();
var_dump($languages);
exit;
Evtl. gibt es ein Datenbankproblem. Hierbei würde der Shop in die
~/oos_temp/log/adodb_error.log
etwas sinnvolles schreiben.
Grüße
Ralf
Hallo Ralf
Das Ergebnis aus var_dump sieht so aus....
Etwas komisch dabei fand ich, dass im französischen Abschnitt eine Differenz zwischen den Variablen-Zahlen existiert. Die ersten beiden haben eine 7, französisch hat eine 8. Somit habe ich testhalber einmal die französische Sprache im Shop ausgeschaltet. Das Ergebnis bleibt sich jedoch gleich. Demzufolge kein Sprachproblem....
Im adodb_error.log erscheint mir beim Erstellen eines neuen Artikels folgender Inhalt:
Dies sieht schon eher nach Fehler aus. Offensichtlich wird kein Wert an "products_reorder_level" übergeben....
Gehe ich richtig davon aus, dass hier die letzte Position der products_id ermittelt wird und die anschliessende Zahl ergibt dann products_reorder_level? Und da dort kein Wert hinterlegt ist, beginnt er Mal mit dem Einfügen in der Tabelle products_description (mit products_id: Wert 0) und später bemerkt er dann irgendwie den Fehler und fällt auf die Schnauze....
An welcher Position wird den dieser Wert ermittelt?
Gruss
Päde
Das Ergebnis aus var_dump sieht so aus....
Code: Alles auswählen
array(3) {
[0]
=> array(4) {["id"]
=> string(1) "1" ["name"]
=> string(7) "Deutsch" ["iso_639_2"]
=> string(3) "deu" ["iso_639_1"]
=> string(2) "de" }
[1]
=> array(4) { ["id"]
=> string(1) "2" ["name"]
=> string(7) "English" ["iso_639_2"]
=> string(3) "eng" ["iso_639_1"]
=> string(2) "en" }
[2]
=> array(4) { ["id"]
=> string(1) "7" ["name"]
=> string(8) "Français" ["iso_639_2"]
=> string(3) "fra" ["iso_639_1"]
=> string(2) "fr" } }
Etwas komisch dabei fand ich, dass im französischen Abschnitt eine Differenz zwischen den Variablen-Zahlen existiert. Die ersten beiden haben eine 7, französisch hat eine 8. Somit habe ich testhalber einmal die französische Sprache im Shop ausgeschaltet. Das Ergebnis bleibt sich jedoch gleich. Demzufolge kein Sprachproblem....
Im adodb_error.log erscheint mir beim Erstellen eines neuen Artikels folgender Inhalt:
Code: Alles auswählen
(2009-10-03 09:08:20) mysql error: [1366: Incorrect integer value: '' for column 'products_reorder_level' at row 1] in EXECUTE("INSERT INTO products (products_quantity, products_reorder_level, products_model, products_ean, products_image, products_subimage1, products_subimage2, products_subimage3, products_subimage4, products_subimage5, products_subimage6, products_price, products_base_price, products_product_quantity, products_base_quantity, products_base_unit, products_date_available, products_weight, products_status, products_tax_class_id, manufacturers_id, products_price_list, products_discount_allowed, products_quantity_order_min, products_quantity_order_units, products_discount1, products_discount1_qty, products_discount2, products_discount2_qty, products_discount3, products_discount3_qty, products_discount4, products_discount4_qty, products_sort_order, products_date_added) values ('4', '', '', '', '', '', '', '', '', '', '', '5.57620817844', '1', '1', '1', '', null, '1', '3', '3', '6', '0', '0.00', '1', '', '0', '', '0', '', '0', '', '0', '', '', now())")
(2009-10-03 09:08:20) mysql error: [1062: Duplicate entry '0-7' for key 'PRIMARY] in EXECUTE("INSERT INTO products_to_categories (products_id, categories_id) values ('0', '7')")
(2009-10-03 09:08:20) mysql error: [1062: Duplicate entry '0-53' for key 'PRIMARY] in EXECUTE("INSERT INTO products_to_categories (products_id, categories_id) values ('0', '53')")
Dies sieht schon eher nach Fehler aus. Offensichtlich wird kein Wert an "products_reorder_level" übergeben....
Gehe ich richtig davon aus, dass hier die letzte Position der products_id ermittelt wird und die anschliessende Zahl ergibt dann products_reorder_level? Und da dort kein Wert hinterlegt ist, beginnt er Mal mit dem Einfügen in der Tabelle products_description (mit products_id: Wert 0) und später bemerkt er dann irgendwie den Fehler und fällt auf die Schnauze....
An welcher Position wird den dieser Wert ermittelt?
Gruss
Päde
[quote='päde',index.php?page=Thread&postID=1424#post1424]
Das Ergebnis aus var_dump sieht so aus....
[/quote]
Dies ist Okay.
[quote='päde',index.php?page=Thread&postID=1424#post1424]
Im adodb_error.log erscheint mir beim Erstellen eines neuen Artikels folgender Inhalt:
Das Ergebnis aus var_dump sieht so aus....
Code: Alles auswählen
array(3) {
[0]
=> array(4) {["id"]
=> string(1) "1" ["name"]
=> string(7) "Deutsch" ["iso_639_2"]
=> string(3) "deu" ["iso_639_1"]
=> string(2) "de" }
[1]
=> array(4) { ["id"]
=> string(1) "2" ["name"]
=> string(7) "English" ["iso_639_2"]
=> string(3) "eng" ["iso_639_1"]
=> string(2) "en" }
[2]
=> array(4) { ["id"]
=> string(1) "7" ["name"]
=> string(8) "Français" ["iso_639_2"]
=> string(3) "fra" ["iso_639_1"]
=> string(2) "fr" } }
[/quote]
Dies ist Okay.
[quote='päde',index.php?page=Thread&postID=1424#post1424]
Im adodb_error.log erscheint mir beim Erstellen eines neuen Artikels folgender Inhalt:
Code: Alles auswählen
(2009-10-03 09:08:20) mysql error: [1366: Incorrect integer value: '' for column 'products_reorder_level' at row 1] in EXECUTE("INSERT INTO products (products_quantity, products_reorder_level, products_model, products_ean, products_image, products_subimage1, products_subimage2, products_subimage3, products_subimage4, products_subimage5, products_subimage6, products_price, products_base_price, products_product_quantity, products_base_quantity, products_base_unit, products_date_available, products_weight, products_status, products_tax_class_id, manufacturers_id, products_price_list, products_discount_allowed, products_quantity_order_min, products_quantity_order_units, products_discount1, products_discount1_qty, products_discount2, products_discount2_qty, products_discount3, products_discount3_qty, products_discount4, products_discount4_qty, products_sort_order, products_date_added) values ('4', '', '', '', '', '', '', '', '', '', '', '5.57620817844', '1', '1', '1', '', null, '1', '3', '3', '6', '0', '0.00', '1', '', '0', '', '0', '', '0', '', '0', '', '', now())")
[/quote]
Bitte einmal mit PHPmyAdmin in der Datenbanktabelle [b]products[/b] prüfen, ob [b]products_reorder_level[/b] den Standardwert '5' hat. Wenn nicht eben das
Datenfeld ändern auf 5.
cu
ralf
Hallo Ralf
Gruss
Päde
Standardwert ist bereits auf 5. Allerdings ist die Eingabe des NULL-Wertes nicht erlaubt. Zudem habe ich gesehen, dass sämtliche bereits vorhandenen Einträge den Wert 0 aufweisen.Bitte einmal mit PHPmyAdmin in der Datenbanktabelle products prüfen, ob products_reorder_level den Standardwert '5' hat. Wenn nicht eben das
Datenfeld ändern auf 5.
Gruss
Päde
Hallo,
NOT NULL ist nicht gleich darf nicht 0 sein... sonder darf nicht leer sein.
Bei dem insert ist der Wert für das Feld allerdings lerr ('') hier sollte der Default Wert dann 5 sein.
Hier die Struktur der Datenbank Tabelle
[mysql]
CREATE TABLE IF NOT EXISTS `products` (
`products_id` int(11) NOT NULL AUTO_INCREMENT,
`products_quantity` int(11) NOT NULL DEFAULT '0',
`products_reorder_level` int(11) NOT NULL DEFAULT '5',
`products_model` varchar(12) DEFAULT NULL,
`products_ean` varchar(13) DEFAULT NULL,
`products_image` varchar(64) DEFAULT NULL,
`products_subimage1` varchar(64) DEFAULT NULL,
`products_subimage2` varchar(64) DEFAULT NULL,
`products_subimage3` varchar(64) DEFAULT NULL,
`products_subimage4` varchar(64) DEFAULT NULL,
`products_subimage5` varchar(64) DEFAULT NULL,
`products_subimage6` varchar(64) DEFAULT NULL,
`products_price` decimal(15,4) NOT NULL DEFAULT '0.0000',
`products_base_price` decimal(10,6) NOT NULL DEFAULT '1.000000',
`products_product_quantity` decimal(10,2) NOT NULL DEFAULT '1.00',
`products_base_quantity` decimal(10,6) NOT NULL DEFAULT '1.000000',
`products_base_unit` varchar(12) DEFAULT NULL,
`products_date_added` datetime DEFAULT NULL,
`products_last_modified` datetime DEFAULT NULL,
`products_date_available` datetime DEFAULT NULL,
`products_weight` decimal(5,2) NOT NULL DEFAULT '0.00',
`products_status` tinyint(4) NOT NULL DEFAULT '0',
`products_tax_class_id` int(11) NOT NULL DEFAULT '0',
`manufacturers_id` int(11) DEFAULT NULL,
`products_ordered` int(11) NOT NULL DEFAULT '0',
`products_quantity_order_min` int(11) NOT NULL DEFAULT '1',
`products_quantity_order_units` int(11) NOT NULL DEFAULT '1',
`products_price_list` decimal(15,4) DEFAULT '0.0000',
`products_discount_allowed` decimal(15,2) NOT NULL DEFAULT '0.00',
`products_discount1` decimal(15,4) NOT NULL DEFAULT '0.0000',
`products_discount2` decimal(15,4) NOT NULL DEFAULT '0.0000',
`products_discount3` decimal(15,4) NOT NULL DEFAULT '0.0000',
`products_discount4` decimal(15,4) NOT NULL DEFAULT '0.0000',
`products_discount1_qty` smallint(6) NOT NULL DEFAULT '0',
`products_discount2_qty` smallint(6) NOT NULL DEFAULT '0',
`products_discount3_qty` smallint(6) NOT NULL DEFAULT '0',
`products_discount4_qty` smallint(6) NOT NULL DEFAULT '0',
`products_discounts_id` int(11) NOT NULL DEFAULT '0',
`products_slave_visible` tinyint(4) NOT NULL DEFAULT '1',
`products_sort_order` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`products_id`),
KEY `idx_products_date_added` (`products_date_added`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ; [/mysql]
und wie sieht das Feld bei dir aus?
[mysql]
CREATE TABLE IF NOT EXISTS `n_products` (
`products_quantity` int(11) NOT NULL DEFAULT '0',
`products_reorder_level` int(11) NOT NULL DEFAULT '5',
[/mysql]
cu
ralf
NOT NULL ist nicht gleich darf nicht 0 sein... sonder darf nicht leer sein.
Bei dem insert ist der Wert für das Feld allerdings lerr ('') hier sollte der Default Wert dann 5 sein.
Hier die Struktur der Datenbank Tabelle
[mysql]
CREATE TABLE IF NOT EXISTS `products` (
`products_id` int(11) NOT NULL AUTO_INCREMENT,
`products_quantity` int(11) NOT NULL DEFAULT '0',
`products_reorder_level` int(11) NOT NULL DEFAULT '5',
`products_model` varchar(12) DEFAULT NULL,
`products_ean` varchar(13) DEFAULT NULL,
`products_image` varchar(64) DEFAULT NULL,
`products_subimage1` varchar(64) DEFAULT NULL,
`products_subimage2` varchar(64) DEFAULT NULL,
`products_subimage3` varchar(64) DEFAULT NULL,
`products_subimage4` varchar(64) DEFAULT NULL,
`products_subimage5` varchar(64) DEFAULT NULL,
`products_subimage6` varchar(64) DEFAULT NULL,
`products_price` decimal(15,4) NOT NULL DEFAULT '0.0000',
`products_base_price` decimal(10,6) NOT NULL DEFAULT '1.000000',
`products_product_quantity` decimal(10,2) NOT NULL DEFAULT '1.00',
`products_base_quantity` decimal(10,6) NOT NULL DEFAULT '1.000000',
`products_base_unit` varchar(12) DEFAULT NULL,
`products_date_added` datetime DEFAULT NULL,
`products_last_modified` datetime DEFAULT NULL,
`products_date_available` datetime DEFAULT NULL,
`products_weight` decimal(5,2) NOT NULL DEFAULT '0.00',
`products_status` tinyint(4) NOT NULL DEFAULT '0',
`products_tax_class_id` int(11) NOT NULL DEFAULT '0',
`manufacturers_id` int(11) DEFAULT NULL,
`products_ordered` int(11) NOT NULL DEFAULT '0',
`products_quantity_order_min` int(11) NOT NULL DEFAULT '1',
`products_quantity_order_units` int(11) NOT NULL DEFAULT '1',
`products_price_list` decimal(15,4) DEFAULT '0.0000',
`products_discount_allowed` decimal(15,2) NOT NULL DEFAULT '0.00',
`products_discount1` decimal(15,4) NOT NULL DEFAULT '0.0000',
`products_discount2` decimal(15,4) NOT NULL DEFAULT '0.0000',
`products_discount3` decimal(15,4) NOT NULL DEFAULT '0.0000',
`products_discount4` decimal(15,4) NOT NULL DEFAULT '0.0000',
`products_discount1_qty` smallint(6) NOT NULL DEFAULT '0',
`products_discount2_qty` smallint(6) NOT NULL DEFAULT '0',
`products_discount3_qty` smallint(6) NOT NULL DEFAULT '0',
`products_discount4_qty` smallint(6) NOT NULL DEFAULT '0',
`products_discounts_id` int(11) NOT NULL DEFAULT '0',
`products_slave_visible` tinyint(4) NOT NULL DEFAULT '1',
`products_sort_order` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`products_id`),
KEY `idx_products_date_added` (`products_date_added`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ; [/mysql]
und wie sieht das Feld bei dir aus?
[mysql]
CREATE TABLE IF NOT EXISTS `n_products` (
`products_quantity` int(11) NOT NULL DEFAULT '0',
`products_reorder_level` int(11) NOT NULL DEFAULT '5',
[/mysql]
cu
ralf
Hallo Ralf
Die Tabelle products ist korrekt generiert. Ich meinte auch nicht, dass NOT NULL etwas mit den vorhandenen Einträgen (0) zu tun hat. Vielmehr wollte ich darauf hinweisen, dass die vorhergehenden Einträge nie einen leeren Wert erhielten (ansonsten wäre der Wert ja bei 5). Der Fehler ist also beim Fehlen des Übergabewertes 0 für products_reorder_level zu suchen.
Die Tabelle n_products existiert bei mir nicht.
Gruss
Päde
Die Tabelle products ist korrekt generiert. Ich meinte auch nicht, dass NOT NULL etwas mit den vorhandenen Einträgen (0) zu tun hat. Vielmehr wollte ich darauf hinweisen, dass die vorhergehenden Einträge nie einen leeren Wert erhielten (ansonsten wäre der Wert ja bei 5). Der Fehler ist also beim Fehlen des Übergabewertes 0 für products_reorder_level zu suchen.
Die Tabelle n_products existiert bei mir nicht.
Gruss
Päde