У меня есть ассоциативный массив из 20 имен в этом формате:
$operationCodeName = array(
"Overlord" => 44,
"Rolling Thunder" => 68,
"Desert Storm" => 91,
"Phantom Fury" => 04,
...);
... и я использовал следующий цикл foreach для генерации таблицы (вложенной в форму), которая отображает каждое имя и целое числогод:
foreach($operationCodeName as $operation => $year) {
echo "<tr>
<td>" . $operation . "</td>
<td align='center'>" . $year . "</td>";
echo "<td><input name='comment" . $operation . "' size='50' type='text' placeholder='Comment here'></td>
</tr>";
}
Я назвал переменные, объединив слово «комментарий» с переменной $operation
в атрибуте name текстового ввода.
Эта часть работает должным образом, хотя, если есть более разумный способ сделать это, я весь слух!
Когда пользователь нажимает кнопку «Отправить»,Мне нужно, чтобы эти комментарии отображались на сводной странице.Таблица должна отображать те же элементы массива $operation
и $year
, что и на первой странице, но затем отображать комментарии пользователя с этой предыдущей страницы.
Я попытался использовать решение, состоящее из двух частей, чтобы решить эту проблему:
Во-первых, моя идея заключалась в том, чтобы использовать предыдущий ассоциативный массив для создания каждой объединенной переменной, использовать его для вызова метода _POST:
foreach($operationCodeName as $key => $value){
${"comment" . $key} = $_POST[${"comment" . $key}];
}
... и затем циклически перебирайте все в столбце комментариев, повторяя объединенную переменную, как я делал это для установки их на предыдущей странице в третьем столбце:
foreach($operationCodeName as $operation => $year) {
echo "<tr>
<td>" . $operation . "</td>
<td align='center'>" . $year . "</td>";
echo "<td>" . ${"comment" . $operation} . "</td>
</tr>";
}
Когда я запускаю этот код, таблица правильно отображает первые два столбца, но генерирует пустые теги <td></td>
для третьего столбца.var_dump(_$POST);
отображает:
array(21) { ["commentOverlord"]=> string(9) "Comment 1" ...
"Комментарий 1" был комментарием, введенным на предыдущей странице, поэтому данные здесь, и я просто неправильно вызываю их для отображения в таблице ... Этона самом деле обнадеживает!
Я предполагаю, что не правильно объявляю переменные, но я не уверен, где происходит мое недопонимание.
Как правильно получить комментарии с первой страницы, иотобразить их в третьем столбце этой динамически генерируемой таблицы?
Спасибо за любые предложения!Хотя я программирую на Java около года, я использую PHP только около 2 недель.Тем не менее, пожалуйста, прости меня за любые ошибки новичка!