Выбранные значения флажка для другой страницы

Я новичок в этом деле. Но я хочу отправить проверенные значения флажка на другую страницу. Я иллюстрирую то, что я желаю с кодом ниже;

файл php_checkbox.php

<!DOCTYPE html>
<html>
<head>
<title>Get Values of Multiple Checked Checkboxes</title>
<link rel="stylesheet" href="css/php_checkbox.css" />
</head>
<body>
<div class="container">
<div class="main">
<center>
<h2>PHP: Get Values of Multiple Checked Checkboxes</h2>
<form action="checkbox_value.php" method="post">
<label class="heading">Select Your Technical Exposure:</label><p>
<input type="checkbox" name="check_list[]"value="C/C++"><label>C/C++       </label> <p>
<input type="checkbox" name="check_list[]" value="Java">
<label>Java</label> <p>
<input type="checkbox" name="check_list[]" value="PHP"><label>PHP</label><p>
<input type="checkbox" name="check_list[]"value="HTML/CSS"><label>HTML/CSS</label><p>
<input type="checkbox" name="check_list[]"value="UNIX/LINUX"><label>UNIX/LINUX</label><p>
<input type="submit" name="submit" Value="Submit"/>
<p>
</form>
</div>
</div>
</body>
</html>

файл checkbox_value.php

<?php
if(isset($_POST['submit'])){
if(!empty($_POST['check_list'])) {
// Counting number of checked checkboxes.
$checked_count = count($_POST['check_list']);

foreach($_POST['check_list'] as $selected) {
echo "<p>".$selected ."</p>";}

for ($x = 1; $x <= $checked_count; $x++) {

?>


<!DOCTYPE html>
<html>
<head>
<style>
table, th, td {
border: 1px solid black;
border-collapse: collapse;
}
th, td {
padding: 5px;
text-align: left;
}
</style>
</head>
<body>

<h2>Cell that spans two columns</h2>
<p>To make a cell span more than one column, use the colspan attribute.</p>

<table style="width:50%">
<tr>
<td>Technology</td>
<td><?php echo $selected; ?></td>
</tr>
</table>

<?php
}
}
else{
}
}
?>

</body>
</html>

Приведенный выше код работает. Проблема в том, что когда я выбираю Java и PHP, PHP отображается в обеих таблицах. Когда я выбираю 3 варианта, последний вариант отображается во всех таблицах. Что мне нужно, когда я выбираю, например, PHP, JAVA и UNIX / LINUX, 3 варианта (PHP, JAVA, UNIX / LINUX) отображаются в таблицах отдельно — PHP в первой таблице, Java во второй таблице и UNIX / LINUX в ​​третьей таблице.
Когда я выбираю только 2 (например, Java и PHP), я хочу, чтобы Java на первой таблице и PHP на второй.
Пожалуйста помоги.

0

Решение

Вы должны написать логику строк внутри цикла.

<!DOCTYPE html>
<html>
<head>
<style>
table, th, td {
border: 1px solid black;
border-collapse: collapse;
}
th, td {
padding: 5px;
text-align: left;
}
</style>
</head>
<body>

<h2>Cell that spans two columns</h2>
<p>To make a cell span more than one column, use the colspan attribute.</p>

<table style="width:50%">
<?php
if(isset($_POST['submit'])){
if(!empty($_POST['check_list'])) {
// Counting number of checked checkboxes.
$checked_count = count($_POST['check_list']);

foreach($_POST['check_list'] as $selected) {
echo "<p>".$selected ."</p>";
?>


<tr>
<td>Technology</td>
<td><?php echo $selected; ?></td>
</tr>


<?php
}
}
else{
}
}
?>
</table>
</body>
</html>
1

Другие решения

Проверьте код ниже. Вам не нужно посчитать количество элементов отдельно, когда вы используете foreach() цикл уже.
Кроме того, просто зацикливание table, а не полный HTML.

   <?php
if(isset($_POST['submit'])){
if(!empty($_POST['check_list'])) {
//Counting number of checked checkboxes.
//$checked_count = count($_POST['check_list']);
?>

<!DOCTYPE html>
<html>
<head>
<style>
table, th, td {
border: 1px solid black;
border-collapse: collapse;
}
th, td {
padding: 5px;
text-align: left;
}
</style>
</head>
<body>
<h2>Cell that spans two columns</h2>
<p>To make a cell span more than one column, use the colspan attribute.</p>

<?php

foreach($_POST['check_list'] as $selected)
{
?>
<table style="width:50%">
<tr>
<td>Technology</td>
<td><?php echo $selected; ?></td>
</tr>
</table>
<?php
}
}
}

?>
</body>
</html>
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector