Enrico: PHP-Datei zur String-Umwandlung nach Hexadezimal schneidet String ab (JavaScript/PHP)

Beitrag lesen

Hallo,

mich beschäftigt seit geraumer Zeit ein Ajax-Problem.

Ich bekomme über eine Funktion einen String mit allen sich im Warenkorb befindlichen Artikeln, beispielsweise:

A Mirror's Diary|CD|15|1#Rivers of Heart|CD|12|1

In diesem Beispiel befinden sich ein Exemplar (CD) des Albums "A Mirror's Diary" zum Preis von 15,- EURO und ein Exemplar (CD) des Albums "Rivers of Heart" zum Preis von 12,- EURO im Warenkorb.

Nun wandle ich den "Warenkorb"-String über JavaScript nach Hexadezimal um:


function stringZuHex (string)
{
   if (anfrage !== false)
   {
alert(string);

      anfrage.open ("GET", "../php/stringZuHexGet.php?string=" + string, true);
      anfrage.onreadystatechange = fortfahren;
      anfrage.send (null)
   }
}

Das Ajax-Objekt ist tadellos initialisiert und der alert-Befehl liefert mir an dieser Stelle auch den String mit den zwei Alben.

Nun wird der an dieser Stelle noch korrekte String an die PHP-Datei "stringZuHexGet.php" übergeben:


$string = isset ($_GET["string"]) ? $_GET["string"] : false;

if ($string !== false)
{
   echo array_shift (unpack ('H*', $string));
}
else
{
   echo -1;
}

Lasse ich mir nun unmittelbar nach dem Auslesen der Variable $string dessen Wert ausgeben, dann bekomme ich nur das erste Album geliefert:

A Mirror's Diary|CD|15|1

Warum schneidet er mir das zweite Album ab?

Vielen Dank für eure Hilfe.

Gruß

Enrico

akzeptierte Antworten