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

Campo não salva no banco. (PHP com MYSQL)


vander lopes

Pergunta

Prezados, boa tarde.

Precisei incluir um campo "marca" numa tela de cadastro de estoque, mas não estou conseguindo fazer com que salve o mesmo, o mais próximo que consegui chegar foi em salvar os outros campos, mas quando vou vê o novo campo no BD o mesmo fica vazia, ou seja, não importa da tela de cadastro para o arquivo que salva.

 

Agradeço a ajuda desde já.

 

Código do arquivo "estoque-registrar.php".

<?php 

include_once 'autenticacao.php';
include_once '../../conexao.php';
include_once '../../funcoes.php';

$cnesbusca = $_SESSION["cnes"];


//Armazenar o nome da unidade do usuario
$sqlbusca = "select
    CNES,
    NOME_UNIDADE
    from UNIDADES
    where CNES = '".$cnesbusca."'
    ";
        
$resultbusca = mysqli_query($con, $sqlbusca);
$rowbusca = mysqli_fetch_array($resultbusca);

$nomeunidade = $rowbusca["NOME_UNIDADE"];

//mysqli_close($con);

?>

<!DOCTYPE html>
<html lang="pt-br">

<head>

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <meta name="author" content="">

    <title>Cuidado da Pessoa com Lesão</title>

    <!-- Bootstrap Core CSS -->
    <link href="../../css/bootstrap.css" rel="stylesheet">

    <!-- Custom CSS -->
    <link href="../../css/modern-business.css" rel="stylesheet">

    <!-- Custom Fonts -->
    <link href="../../font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css">
      
    <script src="../../js/jquery.min.js"></script>
    <script src="../../js/jquery.validate.js"></script>
    <script src="../../js/maskedinput-1.1.2.js"></script>
     
         <style>
                label.error{
                color:red;
                font-size: 9px;
                position: absolute;
            }              
            
            table#tabela-estoque{
                width: 100%;
                margin-top: 0.5%;     

            }

            table#tabela-estoque th{
                font-size:8pt;
                background-color: #6495ED;
                color: white;
            }
            table#tabela-estoque td{
                font-size:9.5pt;
            }
            
         </style>
            
    
</head>

<body>

    <?php
    include_once '../../nav-menu2.php';
    ?>

    <!-- Page Content -->
    <div class="container" style="width: 85%">

        <div class="row">
            <div class="col-lg-12">
                <h1 class="page-header">Cuidado da Pessoa com Lesão
                    <small></small>
                </h1>
                <ol class="breadcrumb">
                    <li><a href="../painel.php">Início</a></li>
                    <li class="active"><?php echo $rowbusca["NOME_UNIDADE"];?></li>
                    <li class="active"><?php echo $_SESSION["nome"];?></li>
                    <li><a href="cobert-menu.php">Cuidado da Pessoa com Lesão</a></li>
                </ol>
            </div>
        </div>

        <!-- /.row -->

        <!-- Content Row -->
        <div class="row">
            
            <?php
                include_once 'cobert-barra-lateral.php';
            ?>

            <!-- Content Column -->
            <div class="col-md-9" id="antirrabica">
              
                <?php
                
                    $sql = "select * from LESAO_COBERTURAS order by TIPO_COBERTURA ASC";
                    $result = mysqli_query($con, $sql);
                    if(mysqli_num_rows($result)>0){
                    $dataatual = date('d/m/Y');


                    
                    $sqlmax = "select MAX(ID_COBERTURA) as MAX from LESAO_COBERTURAS";
                    $resultmax = mysqli_query($con, $sqlmax);
                    $rowmax = mysqli_fetch_array($resultmax);



                ?>
                
                <h4 style="text-decoration:underline;">Registro de estoque no dia <b><?php echo $dataatual;?></b></h4>
                <form action="estoque-gravar.php" method="post">                                                                       
                
                    <input type="hidden" name="cont" value="<?php echo $rowmax["MAX"];?>">
                    
                    <table class="table table-hover table-bordered" id="tabela-estoque" style="width: 65%">   
                    <tr> 
                        <th>TIPO DE COBERTURA</th>
                        <th>COBERTURA</th>
                        <th>UNIDADE</th>
                        <th style="width: 14%">QTD EM ESTOQUE</th>
                        <th style="width: 20%">MARCA</th>

                    </tr>  
                        
                   <?php
                   while ($row = mysqli_fetch_array($result)){

                        foreach($row as $key => $values){
                        $row[$key]= utf8_encode($values);
                        } 
                        
                        $id = $row["ID_COBERTURA"];
                        
                        if($id==1 or $id==2 or $id==3 or $id==21 or $id==22 or $id==23 or $id==24 or $id==25 or $id==26){
                            $exibir = 'n';
                        }else{
                            $exibir = 's';
                        }
                        
                        if($exibir == 's'){
                        ?>
                <tr>
                    <td><?php echo $row["TIPO_COBERTURA"]; ?></td>
                    <td><?php echo $row["COBERTURA"];?></td>
                    <td><?php echo $row["UNIDADE"];?></td>

                    <td><input type="number" name="<?php echo $row["ID_COBERTURA"] ?>" class="form-control" style="width:100%;height: 22px;font-size:8pt;" ></td>

                    <td><input type="text" name="marca" class="form-control" style="width:100%;height: 22px;font-size:8pt;" onkeyup="javascript:this.value=this.value.toUpperCase();"></td>
                </tr>
                    <?php    
                        }
                    }
                    ?>    
     
                    </table>

                <input style="height: 45px; width: 25%; font-size: 17pt; padding: 0.2%;" type="submit" readonly value="Solicitar" class="btn btn-primary">
               
                    
                </form> 
             
            <?php
            }
            ?>
                
                
                
            </div>
        </div>
        <!-- /.row -->

        <hr>

        
        
        <br><br><br><br><br><br><br><br><br>
        
   
        
        
        

    </div>
    <!-- /.container -->

   
    

</body>

</html>

 

 

 

 

Arquivo para gravar os dados "estoque-gravar.php":

<?php

include_once 'autenticacao.php';
include_once'../../conexao.php';
include_once '../../funcoes.php';       
include_once '../../decodepost.php';




         
        if( !isset($_POST["cont"]) or !isset($_SESSION["cnes"]) ){
            
            ECHO "Erro";
            
        }else{

        $cnes = $_SESSION["cnes"];
        $idusuario = $_SESSION["idusuario"];

        $cont = $_POST["cont"];     

         $sql = "insert into LESAO_ESTOQUE values(null,curdate(), '".$cnes."',".$idusuario.")";
      
                if(mysqli_query($con, $sql)){

                $idestoque = mysqli_insert_id($con);
                $coberturas = 0;
                
                    for($i=1 ; $i<=$cont; $i++){

                        if(isset($_POST[$i])){

                            if($_POST[$i]<=0){

                            }else{
                                $qtd = $_POST[$i];
                                $marca = $_POST["marca"];                             
$sqlqtd = "insert into LESAO_REL_ESTOQUE_COBERTURAS values(".$idestoque.", ".$i.", ".$qtd.",  ".$marca.", ".$idusuario.")";
if(mysqli_query($con, $sqlqtd)){
$coberturas = $coberturas+1;
                                }
                            }
                            } 
                    }
                    
                     $grav = "Registrado estoque de ".$coberturas." coberturas !";  

                }else{
                    $grav = "Erro ao registrar estoque !";
                }

                
        //5- Fechar a conexão
        mysqli_close($con);
        ?>
        
        <script>
            alert('<?php echo $grav; ?>');
            location.href="pedido-material.php";
        </script>
       
       
        
        <?php
        }
        ?>

 

 

 

Editado por vander lopes
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Quando eu enfrento esse tipo de problema, eu coloco uma linha "echo" assim:

$sqlqtd = "insert into LESAO_REL_ESTOQUE_COBERTURAS values(".$idestoque.", ".$i.", ".$qtd.",  ".$marca.", ".$idusuario.")";
echo $sqlqtd;

Eu copio o que aparecer na tela, vou lá no MySQL Workbench, uso uma linha de uma query, colo o comando, e tento executar o comando para ver o que acontece. Tudo indica que a tabela LESAO_REL_ESTOQUE_COBERTURAS tem o campo definido como alfanumérico mas você está tentando passar como numérico.

A minha sugestão é essa daqui (mudei o nome da tabela para facilitar):

$sqlqtd = "insert into tblesao values ($idestoque,$i,$qtd,'$marca',$idusuario)";

supondo que o campo marca é o único campo alfanumérico.

Editado por Frank K Hosaka
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...