MajorRom Posted August 8, 2007 Report Share Posted August 8, 2007 Hallo, wenn man in der "Attribut Verwaltung" ein Attribut von einem Artikel auf einen anderen kopiert, werden die hinterlegten Zahlen bei der Reihenfolge nicht mit übernommen. Wo kann man den Fehler fixen, denn das ist bestimmt nicht so vorgesehen oder? Dann hab ich das Problem, wenn ich das Attribute bearbeite aber nicht mit "speichern" abschicke das Attribute trotzdem schon mit in der Optionliste aufgenommen wird. Anscheinend werden die Attribute schon in der Tabelle products_attributes eingetragen wenn ich beim Kopieren einen Artikel auswähle. Denn selbst wenn ich das Fenster mit "Attribute Editieren:" nicht speichere stehen die Attribute schon in der Tabelle "products_attributes" und zwar zusätzlich zu schon vorhanden Attributen. Hier hatte ich dann Schuhe die dann 20x die Liste der Schuhgrößen drin hatten. Wer hat denn die Fehler gefixt oder eine bessere Lösung parat? Grüße Major Link to comment Share on other sites More sharing options...
snookie Posted August 23, 2007 Report Share Posted August 23, 2007 In der Datei /admin/new_attributes.php findet sich folgende Code (ca. Zeile 65-70) if ($_POST['copy_product_id'] != 0) { $attrib_query = xtc_db_query("SELECT products_id, options_id, options_values_id, options_values_price, price_prefix, attributes_model, attributes_stock, options_values_weight, weight_prefix FROM ".TABLE_PRODUCTS_ATTRIBUTES." WHERE products_id = " . $_POST['copy_product_id']); while ($attrib_res = xtc_db_fetch_array($attrib_query)) { xtc_db_query("INSERT into ".TABLE_PRODUCTS_ATTRIBUTES." (products_id, options_id, options_values_id, options_values_price, price_prefix, attributes_model, attributes_stock, options_values_weight, weight_prefix) VALUES ('" . $_POST['current_product_id'] . "', '" . $attrib_res['options_id'] . "', '" . $attrib_res['options_values_id'] . "', '" . $attrib_res['options_values_price'] . "', '" . $attrib_res['price_prefix'] . "', '" . $attrib_res['attributes_model'] . "', '" . $attrib_res['attributes_stock'] . "', '" . $attrib_res['options_values_weight'] . "', '" . $attrib_res['weight_prefix'] . "')"); } }[/PHP] Diesen Code ersetzen durch folgenden Code: [PHP] if ($_POST['copy_product_id'] != 0) { $attrib_query = xtc_db_query("SELECT products_id, options_id, options_values_id, options_values_price, price_prefix, attributes_model, attributes_stock, options_values_weight, weight_prefix, sortorder FROM ".TABLE_PRODUCTS_ATTRIBUTES." WHERE products_id = " . $_POST['copy_product_id']); while ($attrib_res = xtc_db_fetch_array($attrib_query)) { xtc_db_query("INSERT into ".TABLE_PRODUCTS_ATTRIBUTES." (products_id, options_id, options_values_id, options_values_price, price_prefix, attributes_model, attributes_stock, options_values_weight, weight_prefix, sortorder) VALUES ('" . $_POST['current_product_id'] . "', '" . $attrib_res['options_id'] . "', '" . $attrib_res['options_values_id'] . "', '" . $attrib_res['options_values_price'] . "', '" . $attrib_res['price_prefix'] . "', '" . $attrib_res['attributes_model'] . "', '" . $attrib_res['attributes_stock'] . "', '" . $attrib_res['options_values_weight'] . "', '" . $attrib_res['weight_prefix'] . "', '" . $attrib_res['sortorder'] . "')"); } }[/PHP] Das feld "sortorder" wurder in den SQL Befehlen vergessen (ich nehme an, dass bei einem Update das Feld hinzugekommen ist und in dieser Datei die Änderungen vergessen wurden). Liebe Grüße Patrick Link to comment Share on other sites More sharing options...
SonjaSt Posted August 23, 2007 Report Share Posted August 23, 2007 Super! Danke! Link to comment Share on other sites More sharing options...
jua Posted February 9, 2008 Report Share Posted February 9, 2008 kann mir jmd. mal dringend helfen!? Habe das selbe Problem. Wenn ich der Anweisung hier folge gelingt nur ein Teilerfolg. In der Reihenfolge steht dann bei allen Attributen eine "0". Aber nicht die vorher festgelegten Werte... Link to comment Share on other sites More sharing options...
kreativnetzwerk.de Posted March 4, 2008 Report Share Posted March 4, 2008 ...ja das Problem mit den Nullen hatte ich beim "ersten Versuch" auch. Komischerweise hat´s dann beim 2. Mal funktioniert. Hin und wieder muss ich auch 3 bis 4 mal den Kopiervorgang ausführen Aber dann klappt es 1a Vielen Dank für die Hilfe! Link to comment Share on other sites More sharing options...
mahrko86 Posted March 31, 2008 Report Share Posted March 31, 2008 Das ist echt gold wert Link to comment Share on other sites More sharing options...
EM-aquristik.de Posted April 3, 2008 Report Share Posted April 3, 2008 Vielen Dank. G:D enau danach habe ich gesucht. Werde ich gleich in meine Problembewältigungsanleitungsliste aufnehmen.... Link to comment Share on other sites More sharing options...
der_tim Posted July 21, 2008 Report Share Posted July 21, 2008 hallo, ich hatte auch den code von snookie probiert und den selben effekt mit den "manchmal" kopierten reihung gehabt, sprich, meistens waren da nur nullen zu sehen. ich bin nun nicht sehr sql-erfahren, aber ich hab eines probiert und das behebt das problem (warum auch immer): ich habe das im sql-statement hinzugekommen "sortorder" einfach in der reihenfolge verschoben, sodass es nicht mehr das letzte abgefragte attribut vor dem FROM ist. seitdem wird die reihung sofort und richtig übernommen. ich vermute, dass dafür jetzt (das bei mir als letztes stehende "weight_prefix" dafür fehlerhaft abgefragt wird .. beim jetzigen shop ist das aber nicht von belang, sodass es nicht weiter stört. .. dinge gibts, gruß tim Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.