PHP-форма толкает только один объект в массив - PullRequest
0 голосов
/ 27 мая 2018

Всякий раз, когда новый объект класса productEntry помещается в массив $ products, последняя запись перезаписывает последнюю.

    if (isset($_POST['formedit'])){
        $newproduct = new productEntry;
        $newproduct->productid = count($products);
        $newproduct->name = $_POST['productnamefield'];
        $newproduct->weight = $_POST['productweightfield'];
        $newproduct->length = $_POST['productlengthfield'];
        $newproduct->width = $_POST['productwidthfield'];
        $newproduct->height = $_POST['productheightfield'];
        $products[] = $newproduct;
    }

Это вывод после однократной отправки формы:

productEntry Object ( [productid] => 0 [name] => 1 [weight] => 1 [length] => 1 [width] => 1 [height] => 1 ) productEntry Object ( [productid] => 1 [name] => 2 [weight] => 2 [length] => 2 [width] => 2 [height] => 2 ) productEntry Object ( [productid] => 2 [name] => 3 [weight] => 3 [length] => 3 [width] => 3 [height] => 3 ) productEntry Object ( [productid] => 3 [name] => 4 [weight] => 4 [length] => 4 [width] => 4 [height] => 4 )

и затем, если я отправлю форму еще раз с другими значениями

productEntry Object ( [productid] => 0 [name] => 1 [weight] => 1 [length] => 1 [width] => 1 [height] => 1 ) productEntry Object ( [productid] => 1 [name] => 2 [weight] => 2 [length] => 2 [width] => 2 [height] => 2 ) productEntry Object ( [productid] => 2 [name] => 3 [weight] => 3 [length] => 3 [width] => 3 [height] => 3 ) productEntry Object ( [productid] => 3 [name] => 5 [weight] => 5 [length] => 5 [width] => 5 [height] => 5 )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...