Fehler in der XML-Schnittstelle für Items

Ich habe ein weiteres Problem mit den Item-XML-Daten. Nach dem DB-Update habt ihr die ja geändert.

So war die Struktur früher:
Code:
[...]
<div class='wowitemt' style='display:block'>
	<div>
		<span class='purplename'>Gurt des Lauerers</span><br /><br />Wird beim Aufheben gebunden<br />
	</div>
[...]

Dies wurde geändert zu:

Code:
[...]
<div class='wowtooltip'>
	<div>
		<span class='itemtitle q4'>Gurt des Lauerers</span><br /><br />Wird beim Aufheben gebunden<br />
	</div>
[...]

Die Änderung von wowitemt zu wowtooltip
und purplename zu itemtitle q4 verursacht bei vielen Tools die die Datenbank genutzt haben Probleme. Sind diese Änderungen beabsichtigt? Also muss ich nun meine Tools anpassen?

Zusätzlich taucht bei den Items am Schluss
Code:
</span><br /><!--insert--></div>

auf. Das [/div]-Tag wurde nie geöffnet, ist also fehlerhaft....

EDIT: Habe mich nu die ganze Nacht damit rumgeschlagen^^ Hoffe (und danke schonmal) für/auf Antwort
 
Zuletzt bearbeitet von einem Moderator:
Hi haplo,

die Stylesheet-Klasse "wowitemt" oder "purplename" hab ich eigentlich nie verwendet. Die werden anscheinend von dem entsprechenden Tools geändert.

Wenn du allerdings direkt die Stylesheets von unserem Server beziehst sollte es diese Problem nicht geben. Dazu bindest du einfach die Datei http://www.buffed.de/css/wowtooltip.css ein. Dann sollte es eigentlich funktionieren.

Was den </div>-tag angeht: Der pass schon so, der schließt <div class='wowtooltip'> vom Anfang.
 
Morgn,

seit letzter Woche treten unter Verwendung von EQDKP (in Verbindung mit Itemstats) zwei Probleme auf:

a) Die Items werden "optisch" nicht mehr richtig angezeigt dh. ihnen fehlt der Rand, die Grafiken für die Metasockel, die farbliche Hervorhebung (lila für episch etc.) usw.
b) Die Umlaute werden nicht korrekt angezeigt

Problem a) wurde bereits durch hier beschriebene Problemlösung behoben. Allerdings scheint das mit den Umlauten doch etwas komplizierter zu sein. Anzeigen wie z.B.

Lawinengamaschen
Wird beim Aufheben gebunden
Beine Schwere Rüstung
787 Rüstung
+31 Ausdauer
+40 Intelligenz
Roter Sockel
Gelber Sockel
Blauer Sockel
Sockelbonus +5 Zauberschaden
Benötigt Stufe 70
Anlegen: Erhöht kritische Zaubertrefferwertung um 30.
Anlegen: Erhöht durch Zauber und magische Effekte verursachten Schaden und Heilung um bis zu 46.

sind optisch gesehen doch etwas störend. Wie lässt sich dieses Problem beheben bzw. wieso tritt es erst seit einigen Tagen (Stichwort: Datenbankumstellung/-arbeiten bei Buffed) auf?
smile.gif


Greets
Nom
 
Ist es möglich die daten zu encoden so das man sie auf isosystemen benutzen kann??
Ach ja und zur Erklärung warum das auftaucht. Buffed hatte vorher wie im europäischen Raum üblich eine ISO konvention als DB konvention drin. Aber aus einem mir unerfindlichen Grund und total sinnlos in meinen Augen haben sie auf UTF umgestellt. Ergo alle Iso DB's können die Umlaute nciht mehr verstehen ausser man sendet sie encoded....Aber anscheinend geht da nix vorwärts obwohl es viele brauchen...Vielleicht sollten wir über einen Wechsel für EQDKP items zu Allka nachdenken....

So lösung von nem kollegen von EQDKP

Beinn Zeile 241 in der blasc.php
else {
$item['html'] .= '</ div>';
}

//hier die zeile, damit die umlaute wieder richtig dargestellt werden
$item['html'] = utf8_decode($item['html']);

// Build the final HTML by merging the template and the data we just prepared.
$template_html = trim(file_get_contents(dirname(__FILE__) . '/../templates/popup.tpl'));
$item['html'] = str_replace('{ITEM_HTML}', $item['html'], $template_html);
 
Zuletzt bearbeitet von einem Moderator:
Jo, das mit den Umlauten ist echt hässlich
sad.gif


Ich hab mein Itemstats folgendermaßen umgebaut:

Angepasste Datei: \itemstats\includes\blasc.php

Änderungen:

-------------- FIND in function getItemHtml: -------------

else
{
// If BLASC was busy or this item doesn't exist and this item isn't cached yet, leave the alternate html blank.
$item['html'] = "";
}

------------ ADD, AFTER: -------------------------------

// ADD by Onestone of www.da-twink.de: Handling of special chars that get decoded wrongly
// ü to ü
$item['html'] = str_replace('ü', 'ü', $item['html']);
// ö to ö
$item['html'] = str_replace('ö', 'ö', $item['html']);
// ä to ä
$item['html'] = str_replace('ä', 'ä', $item['html']);
// ß to ß
$item['html'] = str_replace('ß', 'ß', $item['html']);

// Ãœ to Ü
$item['html'] = str_replace('Ãœ', 'Ü', $item['html']);
// Ä to Ä
$item['html'] = str_replace('Ä', 'Ä', $item['html']);
// Ö to Ö
$item['html'] = str_replace('Ö', 'Ö', $item['html']);
// =========== END of MOD by Onestone ======

--------------- END OF MOD ------------



Zwar nicht die sauberste Methode, aber tut ihren Zweck.
 
Jo, das mit den Umlauten ist echt hässlich
sad.gif


Ich hab mein Itemstats folgendermaßen umgebaut:

Angepasste Datei: \itemstats\includes\blasc.php

Änderungen:

-------------- FIND in function getItemHtml: -------------

else
{
// If BLASC was busy or this item doesn't exist and this item isn't cached yet, leave the alternate html blank.
$item['html'] = "";
}

------------ ADD, AFTER: -------------------------------

// ADD by Onestone of www.da-twink.de: Handling of special chars that get decoded wrongly
// ü to ü
$item['html'] = str_replace('ü', 'ü', $item['html']);
// ö to ö
$item['html'] = str_replace('ö', 'ö', $item['html']);
// ä to ä
$item['html'] = str_replace('ä', 'ä', $item['html']);
// ß to ß
$item['html'] = str_replace('ß', 'ß', $item['html']);

// Ãœ to Ü
$item['html'] = str_replace('Ãœ', 'Ü', $item['html']);
// Ä to Ä
$item['html'] = str_replace('Ä', 'Ä', $item['html']);
// Ö to Ö
$item['html'] = str_replace('Ö', 'Ö', $item['html']);
// =========== END of MOD by Onestone ======

--------------- END OF MOD ------------
Zwar nicht die sauberste Methode, aber tut ihren Zweck.

Kanst dir alles sparen wenn du die eine Zeile einfügst anstatt dem langen schwanz
$item['html'] = utf8_decode($item['html']); diese zeile nur an der Stelle oben eintragen fertig.
 
Kanst dir alles sparen wenn du die eine Zeile einfügst anstatt dem langen schwanz
$item['html'] = utf8_decode($item['html']); diese zeile nur an der Stelle oben eintragen fertig.

Danke, funzt wunderbar ! Trotzdem: Warum wurde denn die Kodierung umgestellt ?
 
Zurück