raygin Posted March 29, 2009 Report Share Posted March 29, 2009 Hallo, nachdem ich leider keine Antwort auf folgenden Fehler gefunden habe (auch im Forum nicht) versuche ich es mit einem neuen Eintrag. Bei der Anlage eines Kunden aus Italien mit Eingabe der UID-Nr. kommt folgender Fehler: Fatal error: Call to undefined function wddx_deserialize() in /srv/www/vhosts/ginterstorfer.at/httpdocs/shop/includes/classes/vat_validation.php on line 911 Bei Kunden aus Österreich und Deutschland mit Eingabe UID-Nr. funktioniert alles, jedoch bei Kunden aus IT funktioniert die Anlage nicht. Bitte um dringende Hilfe, da sich sonst einige Kunden bei mir im Shop nicht registrieren können. Danke vielmals schöne Grüße Raymond Link to comment Share on other sites More sharing options...
cmprima Posted September 29, 2009 Report Share Posted September 29, 2009 Hallo, nachdem ich leider keine Antwort auf folgenden Fehler gefunden habe (auch im Forum nicht) versuche ich es mit einem neuen Eintrag. Bei der Anlage eines Kunden aus Italien mit Eingabe der UID-Nr. kommt folgender Fehler: Fatal error: Call to undefined function wddx_deserialize() in /srv/www/vhosts/ginterstorfer.at/httpdocs/shop/includes/classes/vat_validation.php on line 911 Bei Kunden aus Österreich und Deutschland mit Eingabe UID-Nr. funktioniert alles, jedoch bei Kunden aus IT funktioniert die Anlage nicht. Bitte um dringende Hilfe, da sich sonst einige Kunden bei mir im Shop nicht registrieren können. Danke vielmals schöne Grüße Raymond Da ich heute das gleiche Problem hatte, habe ich da mal etwas gesucht. Wenn die Funktion wddx_deserialize() nicht existiert, kann die UstIdNr. nicht geprüft werden. wddx_deserialize() sollte Bestandteil des curl-paketes sein, bei mir will es aber einfach nicht funktionieren. dave at codexweb dot co dot za hat folgenden wddx_deserialize-clone geschrieben den man einfach in die vat_validate.php einfügt: vor class vat_validation { [/PHP] das einfügen: [PHP] if (!function_exists('wddx_deserialize')) { /** * Clone implementation of wddx_deserialize */ function wddx_deserialize($xmlpacket) { if ($xmlpacket instanceof SimpleXMLElement) { if (!empty($xmlpacket->struct)) { $struct = array(); foreach ($xmlpacket->xpath("struct/var") as $var) { if (!empty($var["name"])) { $key = (string) $var["name"]; $struct[$key] = wddx_deserialize($var); } } return $struct; } else if (!empty($xmlpacket->array)) { $array = array(); foreach ($xmlpacket->xpath("array/*") as $var) { array_push($array, wddx_deserialize($var)); } return $array; } else if (!empty($xmlpacket->string)) { return (string) $xmlpacket->string; } else if (!empty($xmlpacket->number)) { return (int) $xmlpacket->number; } else { if (is_numeric((string) $xmlpacket)) { return (int) $xmlpacket; } else { return (string) $xmlpacket; } } } else { $sxe = simplexml_load_string($xmlpacket); $datanode = $sxe->xpath("/wddxPacket[@version='1.0']/data"); return wddx_deserialize($datanode[0]); } } } [/PHP] Danach sollte alles einwandfrei funktionieren. Gruß cmprima Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.