Bilder aus JTL-Wawi erscheinen nicht im Shop

gerhard5302

Sehr aktives Mitglied
21. Juli 2006
4.219
29
Henndorf am Wallersee (Österreich)
Auch ich kann keine Bilder mehr in den XTC-Shop hochladen.
Ist bei uns auch schon längere Zeit so. Ich habs aufgegeben und lege alle Bilder bei neuen Artikel dann über den xt:c Admin nochmals an. Ist zwar mühsam aber der einzige Weg für uns derzeit.
Beispiel:
http://www.ok4you-shop.com/index.php/cat/c15_Brother-kompatibel.html/page/2
4. Artikel von unten, Art.Nr. BR3100TR

Aber: es betrifft bei uns nur die Fotos in der product_listing. In den Artikeldetails sind die Bilder aus der WaWi aber da!

lg
Gerhard
 

jkatzorke

Aktives Mitglied
2. Juni 2008
27
0
so wie es scheint, werden die bilder nicht in die datenbank geschrieben.
es muss also am connector liegen.

allerdings habe ich den grund noch nicht herausgefunden.
 

Guenter H.

Moderator
Mitarbeiter
10. November 2006
4.225
5
Styria / Austria
am connector hat sich schon lange nix geändert, der grund liegt wo anders. ev würde die komplette log-datei weiterhelfen.

wawi neu starten -> bild hinzufügen-> shopabgleich -> wawi schließen -> log-datei sichern
 

jkatzorke

Aktives Mitglied
2. Juni 2008
27
0
ok, werde ich machen... dauert nur etwas 😉

zumindest ändert sich nichts in der tabelle products.

wird einem artikel ein bild zugewiesen und erfolgt der abgleich, wird das bild zwar hochgeladen aber die spalte product_image bleibt auf null.

löschen funktioniert aber. denn nach dem löschen des bilds in der wawi lautet der eintrag in der spalte nicht "null" sondern "", ist also leer.

meine vermutung war/ist/bleibt daher, daß die variable $bildname den inhalt "verliert".

denn als ich diese in der sql-anweisung durch "test" ersetzt habe, wurde dies in die datenbank übernommen.

[NACHTRAG]
Es handelt sich um jpegs, die empfohlene Größe wird nicht überschritten.
 

Gauss

Aktives Mitglied
15. Oktober 2006
13
0
Wir haben leider genau das selbe Problem.

JPG Bilder klappen. GIF und andere wollen nich. Habe mir den Connector-Code mal angesehen. Dieser geht immer von einem JPG-Bild aus.

Sollen die Bilder in der Wawi bereits konvertiert werden? Wenn ja, klappt dies aktuell nicht. Denn früher konnten wir auch mal GIF Bilder hochladen.

Im Connector könnte man evtl. mit: imagecreatefromstring() arbeiten. Die Funktion erkennt wohl automatisch das Bildformat. Dann resizen und Bild als jpg speichern. Nur so als Idee. Wenn die Wawi intern schon konvertiert wäre dies natürlich auch sinnvoll.
 

gerhard5302

Sehr aktives Mitglied
21. Juli 2006
4.219
29
Henndorf am Wallersee (Österreich)
Ich verwende nur .jpg Bilder und alle kleiner als 640x480. Und auf der Produktübersicht im xt:c wird das Bild trotzdem nicht angezeigt, sehr wohl aber bei den Artikeldetails.
Siehe mein Beispiel weiter oben.

Erst wenn wir das / die Bilder im Admin vom xt:c bei den Artikel nochmals händisch hochladen, geht es.
Die Wawi ist immerhin so schlau, und überschreibt diese "xt:c Bilder" nicht beim nächsten Webshopabgleich.

lg
Gerhard
 

jkatzorke

Aktives Mitglied
2. Juni 2008
27
0
Hallo zusammen,

Günter hat die Lösung für mein Problem gefunden.

Die Bilder die man mir zur Verfügung stellte waren keine "echten" jpegs.

Anstatt daß sie konvertiert wurden, wurden sie lediglich umbenannt, der Header blieb also "GIF".

Muß auch erst mal einer darauf kommen...

Als Dankeschön gibt es von mir eine kleine Anpassung für den XTC-Connector.

Mit folgendem Code in der "dbeS/setArtikel.php" ist es möglich, neben jpegs auch gifs und pngs hochzuladen:



Code:
$bildname=$products_id."_".(intval($_POST['nNr'])-1).".";
			if (intval($_POST['nNr'])==1 || $additional_pics->configuration_value>=intval($_POST['nNr'])-1)
			{
				$bildinfo = getimagesize ( $_FILES['bild']['tmp_name'] );
				if($bildinfo[2] == "2")
				{
					$type = "jpg";
					move_uploaded_file($_FILES['bild']['tmp_name'],DIR_FS_CATALOG_ORIGINAL_IMAGES.$bildname.$type);
					chmod (DIR_FS_CATALOG_ORIGINAL_IMAGES.$bildname.$type, 0644);
					$im = @imagecreatefromjpeg (DIR_FS_CATALOG_ORIGINAL_IMAGES.$bildname.$type);
				}
				if($bildinfo[2] == "1")
				{
					$type = "gif";
					move_uploaded_file($_FILES['bild']['tmp_name'],DIR_FS_CATALOG_ORIGINAL_IMAGES.$bildname.$type);
					chmod (DIR_FS_CATALOG_ORIGINAL_IMAGES.$bildname.$type, 0644);
					$im = @imagecreatefromgif (DIR_FS_CATALOG_ORIGINAL_IMAGES.$bildname.$type);
				}
				if($bildinfo[2] == "3")
				{
					$type = "png";
					move_uploaded_file($_FILES['bild']['tmp_name'],DIR_FS_CATALOG_ORIGINAL_IMAGES.$bildname.$type);
					chmod (DIR_FS_CATALOG_ORIGINAL_IMAGES.$bildname.$type, 0644);
					$im = @imagecreatefrompng (DIR_FS_CATALOG_ORIGINAL_IMAGES.$bildname.$type);
				}
				
				if ($im)
				{	
					//bild skalieren
					list($width, $height) = getimagesize(DIR_FS_CATALOG_ORIGINAL_IMAGES.$bildname.$type);
					$ratio = $width / $height;
					
					//thumbnail
					$cur_query = xtc_db_query("select configuration_value from configuration where configuration_key=\"PRODUCT_IMAGE_THUMBNAIL_WIDTH\"");
					$width_obj = mysql_fetch_object($cur_query);
					$cur_query = xtc_db_query("select configuration_value from configuration where configuration_key=\"PRODUCT_IMAGE_THUMBNAIL_HEIGHT\"");
					$height_obj = mysql_fetch_object($cur_query);
					$new_width = 120;
					if ($width_obj->configuration_value>0)
						$new_width = $width_obj->configuration_value;
					$new_height = round ($new_width / $ratio);
					if ($new_height>$height_obj->configuration_value)
					{
						$new_height=$height_obj->configuration_value;
						$new_width = round ($new_height * $ratio);
					}
					$image_p = imagecreatetruecolor($new_width, $new_height);
					imagecopyresampled($image_p, $im, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
					
					switch($type)
					{
						case "jpg":
						imagejpeg($image_p, DIR_FS_CATALOG_THUMBNAIL_IMAGES.$bildname.$type, 80);
						break;
						
						case "gif":
						imagegif($image_p, DIR_FS_CATALOG_THUMBNAIL_IMAGES.$bildname.$type, 80);
						break;
						
						case "png":
						imagepng($image_p, DIR_FS_CATALOG_THUMBNAIL_IMAGES.$bildname.$type, 80);
						break;
					}
					
					chmod (DIR_FS_CATALOG_THUMBNAIL_IMAGES.$bildname.$type, 0644);
					
					//info
					$cur_query = xtc_db_query("select configuration_value from configuration where configuration_key=\"PRODUCT_IMAGE_INFO_WIDTH\"");
					$width_obj = mysql_fetch_object($cur_query);
					$cur_query = xtc_db_query("select configuration_value from configuration where configuration_key=\"PRODUCT_IMAGE_INFO_HEIGHT\"");
					$height_obj = mysql_fetch_object($cur_query);
					$new_width = 200;
					if ($width_obj->configuration_value>0)
						$new_width = $width_obj->configuration_value;
					$new_height = round ($new_width / $ratio);
					if ($new_height>$height_obj->configuration_value)
					{
						$new_height=$height_obj->configuration_value;
						$new_width = round ($new_height * $ratio);
					}
					$image_p = imagecreatetruecolor($new_width, $new_height);
					imagecopyresampled($image_p, $im, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
					switch($type)
					{
						case "jpg":
						imagejpeg($image_p, DIR_FS_CATALOG_INFO_IMAGES.$bildname.$type, 80);
						break;
						
						case "gif":
						imagegif($image_p, DIR_FS_CATALOG_INFO_IMAGES.$bildname.$type, 80);
						break;
						
						case "png":
						imagepng($image_p, DIR_FS_CATALOG_INFO_IMAGES.$bildname.$type, 80);
						break;
					}
					
					chmod (DIR_FS_CATALOG_INFO_IMAGES.$bildname.$type, 0644);
								
					//popup
					$cur_query = xtc_db_query("select configuration_value from configuration where configuration_key=\"PRODUCT_IMAGE_POPUP_WIDTH\"");
					$width_obj = mysql_fetch_object($cur_query);
					$cur_query = xtc_db_query("select configuration_value from configuration where configuration_key=\"PRODUCT_IMAGE_POPUP_HEIGHT\"");
					$height_obj = mysql_fetch_object($cur_query);
					$new_width = 300;
					if ($width_obj->configuration_value>0)
						$new_width = $width_obj->configuration_value;
					$new_height = round ($new_width / $ratio);
					if ($new_height>$height_obj->configuration_value)
					{
						$new_height=$height_obj->configuration_value;
						$new_width = round ($new_height * $ratio);
					}
					$image_p = imagecreatetruecolor($new_width, $new_height);
					imagecopyresampled($image_p, $im, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
					switch($type)
					{
						case "jpg":
						imagejpeg($image_p, DIR_FS_CATALOG_POPUP_IMAGES.$bildname.$type, 80);
						break;
						
						case "gif":
						imagegif($image_p, DIR_FS_CATALOG_POPUP_IMAGES.$bildname.$type, 80);
						break;
						
						case "png":
						imagepng($image_p, DIR_FS_CATALOG_POPUP_IMAGES.$bildname.$type, 80);
						break;
					}
					
					chmod (DIR_FS_CATALOG_POPUP_IMAGES.$bildname.$type, 0644);
					
				
					//updaten
					if (intval($_POST['nNr'])==1)
						eS_execute_query("update products set products_image=\"".$bildname.$type."\" where products_id=".$products_id);
					else 
					{
						//lösche evtl. alten Eintrag
						eS_execute_query("delete from products_images where products_id=$products_id and image_nr=".(intval($_POST['nNr'])-1));
						eS_execute_query("insert into products_images (products_id, image_nr, image_name) values ($products_id, ".(intval($_POST['nNr'])-1).", \"".$bildname.$type."\")");
					}
				}
			}

Die Bilder werden übrigens nicht konvertiert, das Ursprungsformat bleibt erhalten. Hat bei mir wunderbar geklappt.
Ich hoffe, ich kann euch damit auch helfen.

MfG

Johannes
 

Guenter H.

Moderator
Mitarbeiter
10. November 2006
4.225
5
Styria / Austria
guten morgen,

nachdem ich mich gestern den ganzen tag immer wieder mit dem bilderupload zum xtc-shop befasst habe ( danke @jkatzorke für die screenshots) - bin ich zu dem schluss gekommen, dass dieser einwandfrei funktioniert.

es scheitert halt immer an "kleinigkeiten", wie zb gif-bilder die einfach durch umbenennen auf jpg "konvertiert" wurden. das kann dann natürlich nicht funktionieren. 😉

die bilder werden zwar in diesem fall in den "original_images" ordner hochgeladen, aber nicht in die übrigen 3 (info_images,...). daher werden diese im shop nicht angezeigt.

wichtig ist auch, dass im xtc-shop-backend höhe und breit für popup-, infobilder und thumbnails hinterlegt ist. wenn diese angaben fehlen, erfolgt auch keine aufteilung auf die jew. ordner.

dies als ergänzung zu den tipps von thomas: Bilder aus JTL-Wawi erscheinen nicht im Shop
 

Diedrichs

Sehr aktives Mitglied
22. Mai 2008
2.418
10
Darmstadt
AW: Bilder aus JTL-Wawi erscheinen nicht im Shop

Hallo

Ich habe einiges gelesen, bin aber nicht klargekommen, deshalb wärme ich den Thread nochmals auf.

Bei mir werden auch die Bilder nicht übertragen. Aber es ist noch eine Besonderheit: der neu erstelle Artikel kann auch nicht in der Detailansicht geöffnet werden, sondern springt dann auf die Startseite.

Erst wenn ich im XTC-Backend den Artikel nochmals aufrufe und dann das Bild hochgeladen habe, dann erscheint das Bild und der Artikel läßt sich auch in der Dateilansicht öffnen.

Kann mir jemand da weiterhelfen? Es ist ziemlich nervig bei neue Artikeln ständig dann alles nochmal im Shop nachzuarbeiten. Eine es.log hätte ich, falls sich das jemand anschauen möchte.

Ach ja: v3.0.4 SP2.1, Wawi 629 und den aktuellen Connector

P.S.: Es scheine echte jpg-Bilder sein, denn an der Korrektur des Patches, wie im Thread vorher angegegben, brachte keine Änderung
 

chris_K

Aktives Mitglied
26. April 2008
230
0
AW: Bilder aus JTL-Wawi erscheinen nicht im Shop

Hallo

Hast du evt. suma freundliche urls installiert?
 

aaha

Sehr aktives Mitglied
11. Januar 2007
548
82
AW: Bilder aus JTL-Wawi erscheinen nicht im Shop

Hallo

Ich habe einiges gelesen, bin aber nicht klargekommen, deshalb wärme ich den Thread nochmals auf.

Ich auch, ich auch ... und bei mir ist das Schlimme, dass ich das, was ich gelesen habe, nicht wirklich begreife: keine Ahnung von PHP und so.

Also, was ich weiß, ist, ich lade z. B. 4 Bilder pro Artikel hoch. Klappt.
In der Artikelinfo sollen also 4 Bilder stehen - klappt - die dann auch im popup anklickbar sind - soweit klappt auch -.

Aber jetzt: Der angeklickte Thumb im popup öffnet auch was. Die Bildquelle von diesem "was" offenbart aber etwas Merkwürdiges. An den ursprünglichen Dateinamen wurde einfach ein .gif drangehängt: also angezeigt werden soll ABC.jpg und im Thumb verlinkt wird ABC.jpg.gif. Kann ja nichts werden. Aber wo passiert das?!

Und, was mir die Sache komplett unverständlich macht ist, dass es vor ca. einer Woche noch nicht war. Da hat es funktioniert. Mit den gleichen Bildern. *schulternzuck*

Kann mir einer einen Rat geben - bitte für Dummies. Danke.
 

aaha

Sehr aktives Mitglied
11. Januar 2007
548
82
AW: Bilder aus JTL-Wawi erscheinen nicht im Shop

Entwarnung!

Es liegt an der Darstellung auf MEINEM Rechner. Freund Kaspersky scheint da was zu blocken. Auf allen Kasperski-geschützten Rechnern das gleiche (Nicht-)Bild. Nur der, wo nur AntiVir läuft, zeigt alles brav und ohne Meckern an.

Da muss man erstmal drauf kommen ...
 

Indi

Aktives Mitglied
8. März 2009
7
0
AW: Bilder aus JTL-Wawi erscheinen nicht im Shop

Kleine Anmerkung zu dem Code für die PNG verwendung von jkatzorke.

Der Code gehört nicht in die setArtikel.php sondern in die setArtikelBild.php.

Weiterhin sind die Aufrufe für PNG und GIF Erstellung fehlerhaft.
imagegif($image_p, DIR_FS_CATALOG_THUMBNAIL_IMAGES.$bildname.$type, 80);
imagepng($image_p, DIR_FS_CATALOG_THUMBNAIL_IMAGES.$bildname.$type, 80);

Die ",80" muss bei allen Aufrufen der imagegif und imagepng Funktion entfernt werden, da es sonst zu Fehlermeldungen kommt.

Aber ansonsten funktioniert das ganze wunderbar, und auch gif/png Bilder machen beim upload WaWi Abgleich keine Probleme mehr.

jm2c
 

Ähnliche Themen