$_SESSION['warenkorb'][] = $art_nr.'&'.$anzahl;
Meine Frage ist nun, die Werte die im Array stehen ist das immer ein String oder wäre das nun in meinem Fall ein Zahl somit ein integer?
So, wie Du es reinschreibst ins Array, ist es ein Array of Strings. Und rechnen kannst Du nicht damit, weil PHP das '&' nicht ein eine Zahl umwandeln kann.
Besser wäre es also, Du schreibst gleich
$_SESSION['warenkorb'][$art_nr] = $anzahl;
oder auch
$_SESSION['warenkorb'][$art_nr] += $anzahl;
Du sagtest das es bei mir ein String ist wenn ich es in Array schreibe dann verstehe ich nicht wieso ich die Variable aussen array wieder auselesen kann oder er gibt das richtige Ergebnis wieder oder ist hier ein Denkfehler? Da es ja läuft!
$_SESSION['warenkorb'][] = $art_nr.'&'.$anzahl;
$count = count($_SESSION['warenkorb']);
for ($i = 0; $i < $count; $i++ )
{
echo "<br>";
$array_pos = $i;
echo "array_pos: <a href='$i'>".$array_pos."</a> ";
echo $wert = $_SESSION['warenkorb'][$i]."<br>";
echo $art_nr."<br>";
echo $anzahl."<br>";
}
Aber wenn ich es nun so schreibe
$_SESSION['warenkorb'][$art_nr] += $anzahl;
$art_nr steht bestimmt nicht in der Reihenfolge und $anzahl muß ja auch an der richtigen $art_nr zugewiesen werden!
Das heißt wird nun $anzahl in das Feld warenkorb geschrieben? Und $art_nr ist die Stelle im array wo es rein soll? Sagen wir mal Nr 234
springt der in php automatisch zu der Nummer oder muß ich das durch eine Schleife laufen lassen. Das verwirrt mich nun, weil Du schreibst in dem anderen Posting das PHP Arrays anders sind als C Arrays
Gruß Maxi