dashmir Posted July 6, 2018 Share Posted July 6, 2018 Hallo Beim Importieren eines Artikels wird in der Spalte Kategorie (bei der Ansicht wird es richtig angezeigt) gesplittet. Die Kategorie hat die Bezeichnung BIC / SIC / OXBOW, sobald ich auf Import klicke, fügt Prestashop mir das Produkt hinzu, jedoch macht es 3 Kategorien (Hauptkategorie BIC -> Unterkategorie SIC -> Unterunterkategerie OXBOW) und fügt das Produkt im OXBOW hinzu. Hier Im bild, wird es korrekt angezeigt: Gibt es eine Einstellung die ich nicht beachtet habe oder eine andere Lösung? Link to comment Share on other sites More sharing options...
dashmir Posted July 23, 2018 Author Share Posted July 23, 2018 so als Info dieses Problem ist gelöst, es darf keine Abstände haben, die Kategorie muss ohne Leerzeichen dargestellt werden: BIC/SIC/OXBOW, somit wird diese als eine einzige kategorie im prestashop erstellt. Topic kann geschlossen werden. gruss Dashmir Link to comment Share on other sites More sharing options...
rictools Posted July 23, 2018 Share Posted July 23, 2018 (edited) Das ist aber nicht wirklich eine Lösung, schließlich sind Kategoriebezeichnungen mit Leerzeichen keine Seltenheit. Hast du es mal ohne / probiert? Vielleicht kann man die Kategoriebezeichnung auch in "" setzen. Evtl. kannst du auch einmal ein geschütztes Leerzeichen (in HTML ) probieren, mußt du evtl. aus der Zeichentabelle einfügen. Edited July 23, 2018 by rictools (see edit history) Link to comment Share on other sites More sharing options...
dashmir Posted July 23, 2018 Author Share Posted July 23, 2018 vor 10 Minuten schrieb rictools: Das ist aber nicht wirklich eine Lösung, schließlich sind Kategoriebezeichnungen mit Leerzeichen keine Seltenheit. Hast du es mal ohne / probiert? Vielleicht kann man die Kategoriebezeichnung auch in "" setzen. Evtl. kannst du auch einmal ein geschütztes Leerzeichen (in HTML ) probieren, mußt du evtl. aus der Zeichentabelle einfügen. Hallo, ich habe es so gemacht, dass ich anstelle des / habe ich ein -(bindestrich) gesetzt. Das interessante ist, dass beim generieren des CSV bei einigen Kategorien, die Hochkommas macht und bei anderen nicht. Das kann ich mir nicht erklären.. was ich aber mal testen kann ist, dass ich in der Variable, falls Hochkommas vorhanden sind diese entferne und dann im nächsten schritt wieder einfüge. was eigentlich nicht so optimal ist aber ich hab keine Erklärung warum bei den einten Kategorien die Hochkommas gesetzt werden bzw. nicht gesetzt. Link to comment Share on other sites More sharing options...
rictools Posted July 23, 2018 Share Posted July 23, 2018 Jetzt komme ich nicht mehr mit, was ist denn nun "BIC-SIC-OXBOW/Open BIC"? Ist das eine Kategorie oder soll das / das Trennzeichen zur Unterkategorie sein (dann darf es natürlich nicht an anderen Stellen auch / enthalten sein)? Auf deinem Screenshoot sind alle Einträge mit Leerzeichen in "" eingebettet, nicht nur einige. Ausnahme die seltsamen Einträge für Länge, Breite, Gewicht, da wird Länge mit ungwöhnlichen Sonderzeichen geschrieben und Breite hängt ohne Trennzeichen an cm, das kann doch nicht funktionieren? Wie "generierst" du denn die CSV-Datei? Vielleicht stimmt der Zeichensatz nicht oder es sind falsche bzw. ungeeignete Trennzeichen konfiguriert. Link to comment Share on other sites More sharing options...
dashmir Posted July 23, 2018 Author Share Posted July 23, 2018 vor 7 Minuten schrieb rictools: Jetzt komme ich nicht mehr mit, was ist denn nun "BIC-SIC-OXBOW/Open BIC"? Ist das eine Kategorie oder soll das / das Trennzeichen zur Unterkategorie sein (dann darf es natürlich nicht an anderen Stellen auch / enthalten sein)? Auf deinem Screenshoot sind alle Einträge mit Leerzeichen in "" eingebettet, nicht nur einige. Ausnahme die seltsamen Einträge für Länge, Breite, Gewicht, da wird Länge mit ungwöhnlichen Sonderzeichen geschrieben und Breite hängt ohne Trennzeichen an cm, das kann doch nicht funktionieren? Wie "generierst" du denn die CSV-Datei? Vielleicht stimmt der Zeichensatz nicht oder es sind falsche bzw. ungeeignete Trennzeichen konfiguriert. Das ganze wird mit PHP gemacht, es sind sehr viele Produkte, die ich von einem anderen Server auf meinem Server in Variablen speichere.. "BIC-SIC-OXBOW/Open BIC" ist folgendes: Der erste Teil, ist die Hauptkategorie, der zweite (nach dem /) ist die Unterkategorie.. In einer For-Schleife (es sind 192 seiten, je 25 / Seite) setzte die Variablen in diesem Array, dass mir das CSV generiert. //für die Produkte $data = array (';'.$isActive.';'.$productName.';'. $Kategorie. ';'.$categoryBrandName.';'. $productPreis_rabatt. ';'.$articleID.';'.$productquantity.';'.$htmlDescription_long.';'.$productStockText.';'.$whole_pic_url.';2'); echo "<pre>"; print_r ($data); echo "</pre>"; foreach($data as $line){ $val = explode(";",$line); fputcsv($fp, $val); } Beim KategorieNamen sowie auch Subkategorie mache ich das hier: $categoryName = str_replace(" / ", "-", $categoryName); $categorySub = str_replace(" / ", "-", $categorySub); Diese Variablen setzte ich zusammen und mache daraus $Kategorie. Diesen Text da mit Breite und Länge, dass ist die Variable $htmlDescription_long. Die Breite, Länge, Gewicht ect. eines Produktes habe ich gar nicht definiert im CSV, Da ich diese Werte gar nicht habe. Als Zeichensatz habe ich ich folgendes: <head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> <title>Produkt-Import</title> </head> Ausser du meinst einen anderen Zeichensatz. ? Link to comment Share on other sites More sharing options...
rictools Posted July 23, 2018 Share Posted July 23, 2018 Generell sollte man als Trennzeichen keines verwenden, das auch in den Feldinhalten verwendet wird, das kannst du doch in Prestashop beliebig konfigurieren. Wie wird denn die Description_long dann ausgegeben, doch wohl kaum korrekt? UTF-8 wäre ja OK, nur sehe ich in deinem Screenshot halt seltsame Sonderzeichen, was mir nicht normal vorkommt. Link to comment Share on other sites More sharing options...
dashmir Posted July 24, 2018 Author Share Posted July 24, 2018 Die Description wird korrekt ins Texfeld des Produktes eingefügt, auch wenns so im CSV aussieht. Das ist der Code für mein CSV, wenn an diesem etwas nicht stimmt, passe ich den gerne an. aber beim Importieren funktioniert es soweit gut. $fp = fopen('data.csv', 'wb') or die('Cannot open file: data.csv'); //für die Produkte $data = array (';'.$isActive.';'.$productName.';'. $Kategorie. ';'.$categoryBrandName.';'. $productPreis_rabatt. ';'.$articleID.';'.$productquantity.';'.$htmlDescription_long.';'.$productStockText.';'.$whole_pic_url.';2'); foreach($data as $line){ $val = explode(";",$line); fputcsv($fp, $val); } fclose($fp); Was ich noch nicht verstehe, warum werden die einen Kategorien mit " angezeigt und die anderen nicht, obwohl es immer die Variable $Kategorie ist. Link to comment Share on other sites More sharing options...
rictools Posted July 24, 2018 Share Posted July 24, 2018 Ich habe mir deinen Screenshot noch einmal angeschaut, tatsächlich, ich hatte da Kommata übersehen, ein Teil der gelb markierten Kategorien steht in "", ein Teil nicht. Aber das ist ganz einfach, bei denen mit "" findet sich ein Leerzeichen, bei den anderen nicht. Gibt es jetzt eigentlich noch irgendein ungelöstes Problem? Link to comment Share on other sites More sharing options...
dashmir Posted July 24, 2018 Author Share Posted July 24, 2018 Sehr gut beobachtet, genau dass ist der Grund warum die "" bei einen gemacht wird und bei anderen nicht.. das ist mir nicht aufgefallen :-) ja das Problem dass ich habe, ist bei einem anderem Thema.. da gebe ich dir auch gleich ne Antwort :-) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now