Ir para conteúdo
Fórum Script Brasil
  • 0

Como criar um checkbox em tabela para salvar os itens selecionados em outra tbl?


Wesley Goncalves

Pergunta

7 respostass a esta questão

Posts Recomendados

  • 0

Eu consegui montar os checkbox e destacar num painel à parte o que foi escolhido. Para salvar o que foi escolhido em outra tabela, precisava de mais informação. Isso vai parecer um orçamento e o checkbox vai atrapalhar ao invés de ajudar. O orçamento vai contemplar o que foi escolhido bem como a quantidade do que foi escolhido (nesse caso, ao invés de trabalhar com checkbox é mais negócio trabalhar com datalist).

<?php
/* mysql -> TABLE `tbprato` (`idprato` int NOT NULL AUTO_INCREMENT, `nome` varchar(45),
PRIMARY KEY (`idprato`)) ENGINE=InnoDB AUTO_INCREMENT=1 
(arroz, feijão, ovo) */
$mysqli=new mysqli("localhost","root","","astudy");
$query=$mysqli->query("select * from tbprato");
echo "escolha as opçoes <br>";
while($rows=$query->fetch_assoc()){
    $prato=$rows['nome'];
    echo "<input type=checkbox name='prato[]' value=$prato onchange=ver()>$prato</input><br>";}
?>

<script>
    function ver(){
        escolhidos=document.getElementsByName('prato[]')
        tamanho=escolhidos.length
        painel.innerHTML="Os pratos escolhidos foram <p>"
        for(i=0;i<=tamanho;i++){
            if(escolhidos[i].checked){
                painel.innerHTML+=escolhidos[i].value+"<p>"}}}
</script>

<div id=painel style=position:fixed;left:200;margin:2px;top:0;background:lightgray;padding:20;border-style:ridge></div>

 

Sem título.png

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

  • 0
Em 14/11/2022 em 18:01, lowys disse:

table html ou tabela do banco de dados mongodb?

 

Seria um tabela de um banco de dados.

 

Para ser mais específico, seria os seguinte: 

criei uma nova tabela e quero salvar o id do item (no exemplo será o item 12) + o id do registro selecionado na tabela. 

para cada checkbox selecionado salva um registro na outra tabela. 

 

image.png.4421e269ef553886dd834bb0497a96bf.png

 

 

Editado por Wesley Goncalves
Link para o comentário
Compartilhar em outros sites

  • 0

O código a seguir é uma bela gambiarra, não respeita a separação de front e back end, mas funciona:
 

<?php
// tbescolha (idescolha pk ai, data datetime, escolha varchar(45)) innoDB
// tbprod (idprod pk ai, produto varchar(45)) innoDB
$mysqli=new mysqli("localhost","root","","astudy");
if(isset($_GET['escolhido'])){
    date_default_timezone_set('America/Sao_Paulo');
    $jescolha=json_encode($_GET['escolhido']);
    $data= date('Y-m-d H:i');
    $query=$mysqli->query("insert into tbescolha (data,escolha) values ('$data','$jescolha')");
    echo "código dos produtos escolhidos $jescolha";}
$query=$mysqli->query("select * from tbprod");
echo "<form>Faça a sua escolha<p>";
while($row=$query->fetch_assoc()){
    $idprod=$row['idprod'];
    echo "<input type=checkbox name=escolhido[] value=$idprod>".$row['produto']."</input></br>";}
echo "<p><input type=submit></form>";

 

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

  • 0
<?php
$conexao=new mysqli("localhost","root","","astudy");
if(isset($_POST["itens"])){
    $numeroitem=mysqli_real_escape_string($conexao,$_POST["numeroitem"]);
    $datas=$_POST['itens'];
    foreach($datas as $data){
        $sql="insert into tb_itens_final (id_item_banco,id_item_cadastro)";
        $sql.="values ('{$data}','{$numeroitem}')";
        mysqli_query($conexao,$sql) or die ("erro ".mysqli_error($conexao));
    }}
?>
<form method=post>
<input type=checkbox value=1 name=itens[]>arroz</input><br>
<input type=checkbox value=2 name=itens[]>feijão</input><br>
<input type=checkbox value=3 name=itens[]>repolho</input><br>
<input type=checkbox value=4 name=itens[]>ovo</input><br>
<input type=checkbox value=5 name=itens[]>pepino</input><br>
<input type=hidden value=12 name=numeroitem>
<input type=submit>
</form>

 

Sem título.png

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...