Insert foreach value into a variable

-2

I'm trying to create a variable with the foreach variables for bank insertion, checkbox values are checked, I'm trying this way:

        // buscando os produtos             
        foreach ($_REQUEST['produto'] as $value) {

            $rel0[0] = $value[0];
            $rel1[1] = $value[1];
            $rel2[2] = $value[2];   
            $rel3[3] = $value[3];
            $rel4[4] = $value[4];
            $rel5[5] = $value[5];
            $rel6[6] = $value[6];
            $rel7[7] = $value[7];
            $rel8[8] = $value[8];
            $rel9[9] = $value[9];   

        }

To insert into the database I'm doing this:

        // inserindo os produtos no banco de dados
        mysql_select_db($database_conexao, $conexao);       
        $sql = "INSERT INTO relacionamento ( id_produto, id_departamento, rel0, rel1, rel2, rel3, rel4, rel5, rel6, rel7, rel8, rel9 ) values ( '$produto', '$id_departamento', '$rel0[0]', '$rel1[1]', '$rel2[2]', '$rel3[3]', '$rel4[4]', '$rel5[5]', '$rel6[6]', '$rel7[7]', '$rel8[8]', '$rel9[9]' )";
        $queryExec = mysql_query($sql, $conexao) or die("Erro ao inserir relacionamento no banco de dados.");   

The checkboxes look like this:

       <td><input type="checkbox" name="produto[]" id="produto[]" value="<?php echo $row_produtos['id_produto']; ?>" />
          <?php echo $row_produtos['id_produto']; ?></td>
       </tr>
    
asked by anonymous 14.01.2015 / 20:08

1 answer

6

Friend, you're creating 10 arrays unnecessarily. Put all with the same name as the variable, changing only the index. Another thing, foreach is just to go through the array, you should not put all values in this way.

foreach ($_REQUEST['produto'] as $value) {
    $rel[] = $value;
}

Remember to change your query as well. The variables $ rel0 [0], $ rel1 [1] ... should be $ rel [0], $ rel [1] ...

    
14.01.2015 / 20:12