Good day.
When iterating through an array, the variable "wraps" back. Why?
Code:
foreach ($_POST as $key=>$value) { if ($key == "username") {$username = $value;} elseif ($key == "phone") {$phone = $value;} elseif ($key == "email") {$email = $value;} elseif ($key == "shiptype") {$shiptype = $value;} elseif ($key == "cardtype") {$cardtype = $value;} elseif ($key == "description") {$description = $value;} else { $id = $key; $volume = $value; } $zakaz .= 'Товар: '.$id.', количество — '.$volume.'<br />'; } echo 'Имя: '.$username.'<br />Телефон: '.$phone.'<br />Почта: '.$email.'<br />Тип доставки: '.$shiptype.'<br />Метро: '.$cardtype.'<br />Примечание: '.$description.'<br />'; echo $zakaz;
In $ _POST, I get an unknown amount of $ key => $ value, so first we screen out the known $ key values, and the remaining ones need to be listed at the end. But it turns out at the output:
Имя: %user% Телефон: %phone% Почта: %mail% Тип доставки: %mail% Метро: %metro% Примечание: %additional% Товар: 1, количество — 1000 Товар: 8, количество — 5 Товар: 9, количество — 4 Товар: 9, количество — 4 Товар: 9, количество — 4 Товар: 9, количество — 4 Товар: 9, количество — 4 Товар: 9, количество — 4 Товар: 9, количество — 4
Although the user has selected item 9 once, he is listed 7 times. Chyadt?