Проводка массива из формы

У меня есть форма на моей странице с кучей входов и некоторых скрытых полей, меня просили передать эти данные через «почтовый массив», только я не уверен, как это сделать,

Вот фрагмент того, что я делаю в данный момент

  • POST на веб-страницу в vb.net (формы выигрыша, рабочий стол, а не ASP.net)
  • Получение всех $ _POST из нескольких значений выбора
  • Как разместить JSON на PHP с завитой
  • Почему POST устанавливается при перезагрузке?
  • Вывод массива в PHP
  • Как заставить WordPress опубликовать URL-адрес изображения
  • <form enctype="multipart/form-data" action="process.php" method="POST"> ... more inputs ... <!-- Hidden data --> <input type="hidden" name="TimeToRenderHoursInput" value="<?php echo $RenderHours; ?>" /> <input type="hidden" name="TimeToRenderDaysInput" value="<?php echo $RenderDays; ?>" /> <input type="hidden" name="TimeToRenderYearsInput" value="<?php echo $RenderYears; ?>" /> <input type="hidden" name="ContentMinutesInput" value="<?php echo $ContentMinutes; ?>" /> <input type="hidden" name="ContentMinutesSelector" value="<?php echo $ContentMinutesSelector; ?>" /> <input type="hidden" name="PriorityInput" value="<?php echo $Priority; ?>" /> <input type="hidden" name="AvgFrameRenderTimeInput" value="<?php echo $AverageFrameRenderTime; ?>" /> <input type="hidden" name="AvgFrameRenderTimeSelector" value="<?php echo $AverageFrameRenderSelector; ?>" /> <input type="hidden" name="CoresInTestInput" value="<?php echo $CoresInTest; ?>" /> <input type="hidden" name="EstPriceInput" value="<?php echo $EstPrice; ?>" /> <!-- End hidden --> <input type="image" src="http://www.venndigital.co.uk/testsite/renderbutton/_includes/images/button/submit.jpg" alt="Submit" value="Submit" style="border:0!important;" /> 

    В моем process.php im, затем вызывая данные как таковые …

     $first_name = $_POST['first_name']; $company_name = $_POST['company_name']; $email_from = $_POST['email']; $address = $_POST['address']; $postcode = $_POST['postcode']; $RenderHours = $_POST['TimeToRenderHoursInput']; $RenderDays = $_POST['TimeToRenderDaysInput']; $RenderYears = $_POST['TimeToRenderYearsInput']; $ContentMinutes = $_POST['ContentMinutesInput']; $ContentMinutesSelector = $_POST['ContentMinutesSelector']; $Priority = $_POST['PriorityInput']; $AverageFrameRenderTime = $_POST['AvgFrameRenderTimeInput']; $AverageFrameRenderSelector = $_POST['AvgFrameRenderTimeSelector']; $CoresInTest = $_POST['CoresInTestInput']; $EstPrice = $_POST['EstPriceInput']; 

    Есть ли способ опубликовать его как массив? Во всяком случае, мой метод плохой практики?

  • Многострочный массив файлов PHP
  • Мой массив ссылок PHP «магически» становится массивом ценностей ... почему?
  • AJAX / PHP - Как получить опубликованные данные для загрузки в модальный на той же странице
  • POST на веб-страницу в vb.net (формы выигрыша, рабочий стол, а не ASP.net)
  • PHP не отображает ошибки, хотя display_errors = On
  • Ошибка ввода PHP / SQL при использовании именных заполнителей
  • 6 Solutions collect form web for “Проводка массива из формы”

    дайте каждому вводу такое имя, как

     <input type="hidden" name="data[EstPriceInput]" value="" /> 

    то в php

      $_POST['data']; print_r($_POST);//print out the whole post print_r($_POST['data']); //print out only the data array 

    будет массив

    Когда вы отправляете эти данные, он сохраняется как массив в $ _POST.

    Вы могли бы сделать что-то вроде:

     <input name="arrayname[item1]"> <input name="arrayname[item2]"> <input name="arrayname[item3]"> 

    а также

     $item1 = $_POST['arrayname']['item1']; $item2 = $_POST['arrayname']['item2']; $item3 = $_POST['arrayname']['item3']; 

    но я не вижу смысла. возможно, получить больше разъяснений?

    Вы уже это делаете, по сути. Когда форма отправляется, данные передаются через массив сообщений ($ _POST). Ваш process.php получает этот массив и перераспределяет его значения как отдельные переменные.

    Почему вы отправляете его через сообщение, если у вас уже есть его на стороне сервера (PHP)?

    Почему бы просто не сохранить массив переменной $_SESSION чтобы вы могли использовать ее, когда форма отправляется, что может сделать ее более «защищенной», так как клиент не может изменить переменные, отредактировав исходный код.

    Это будет зависеть от того, как вы действительно хотите это сделать.

    То, что вы делаете, не обязательно является плохой практикой, но, тем не менее, требует необычного набора текста. Я бы выполнил то, что вы пытаетесь сделать так.

     foreach($_POST as $var => $val){ $$var = $val; } 

    Это займет все переменные POST и поместит их в свои отдельные переменные. Поэтому, если у вас есть поле ввода с именем электронной почты, а luser помещается на Someone@example.com, у вас будет переменная с именем $ email со значением «Someone@example.com».

    Если вы хотите, чтобы все в вашем сообщении было как $ Variables, вы можете использовать что-то вроде этого:

    foreach($_POST as $key => $value) { eval("$" . $key . " = " . $value"); }

    PHP is the Best Programming Language in the world.