Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-如何从选中的复选框和相应的文本框中获取值_Php_Mysql_Database_Checkbox_Textbox - Fatal编程技术网

PHP-如何从选中的复选框和相应的文本框中获取值

PHP-如何从选中的复选框和相应的文本框中获取值,php,mysql,database,checkbox,textbox,Php,Mysql,Database,Checkbox,Textbox,我想在提交表单时得到三个用逗号分隔的值。复选框、文本框1和文本框2中的值 这是我的代码,它从mysql数据库检索值并生成复选框和两个相应的文本框 <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> <?php $query = "SELECT * FROM subject"; $data = mysqli_query($con, $query); while ($row = mysq

我想在提交表单时得到三个用逗号分隔的值。复选框、文本框1和文本框2中的值

这是我的代码,它从mysql数据库检索值并生成复选框和两个相应的文本框

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<?php

$query = "SELECT * FROM subject";
$data = mysqli_query($con, $query);

while ($row = mysqli_fetch_array($data)){
$s = $row['sub'];
echo $s;
?>

<input type="checkbox" name="req_sub[]" value= "<?php echo $s; ?>" />
<input type="text" name="<?php echo $s; ?>" placeholder="Total Number" />
<input type="text" name="<?php echo $s; ?>" placeholder="Pass Number" />     

<?php 
} 
?>
<input type="submit" name="submit" value="Add">
</form>

  • 您需要为
    指定唯一的名称,以便可以在
    PHP
    中接收其值

  • 其次,您需要编写
    PHP
    code,这就是连接这些值

  • 例如,您的
    HTML
    代码可能是:

    <input type="checkbox" name="req_sub[]" value= "<?php echo $s; ?>" />
    <input type="text" name="total[<?php echo $s; ?>]" placeholder="Total Number" />
    <input type="text" name="pass[<?php echo $s; ?>]" placeholder="Pass Number" />     
    
    if (isset($_POST['submit'])) {
        if (!empty($_POST['req_sub'])) {
            foreach ($_POST['req_sub'] as $selected) {
                $total = $_POST['total'][$selected];
                $pass = $_POST['pass'][$selected];
                $var = $selected . ',' . $total . ',' . $pass;
                echo $var . '<br />';
            }
        }
    }
    

    @萨罗,不客气。顺便说一句,如果从数据库获取时,
    $s
    可能包含双引号,则在将其插入
    html
    时,还需要通过
    htmlspecialchars($s)
    对其进行转义。因此,您将得到如下结果:
    
    
    if (isset($_POST['submit'])) {
        if (!empty($_POST['req_sub'])) {
            foreach ($_POST['req_sub'] as $selected) {
                $total = $_POST['total'][$selected];
                $pass = $_POST['pass'][$selected];
                $var = $selected . ',' . $total . ',' . $pass;
                echo $var . '<br />';
            }
        }
    }