Jump to content
xt:Commerce Community Forum

Fehler bei Prüfung UID-Nummer Italien


Recommended Posts

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

  • 6 months later...

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

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...