Jump to content
mbmesquita

Não consigo acrescentar INPUT text no meu formulário

Recommended Posts

9 minutos atrás, Prog disse:

Tire todo o IF e rode apenas mysqli_query(); faça um print no $sql também.

 

Exemplo:

 


$sql = " INSERT INTO feedback_recebido3 (id_usuario, cidade2, saloes_ava, servicosava, valorapx, atendimento, servico1, tde, ambiente, comentarios)values($id_usuario,'$cidade', '$saloes', '".$opcao."', '$valorapx', '$atendimento', '$servico', '$tde', '$ambiente', '$coment') ";

print $sql;
mysqli_query($conexao, $sql);

/*if(mysqli_query($conexao, $sql)){
	header('Location: feedsucesso.php') ;
} else {
echo 'Erro ao tentar inserir o registro';
}*/

 

Prog, retornou isso:

 

INSERT INTO feedback_recebido3 (id_usuario, cidade2, saloes_ava, servicosava, valorapx, atendimento, servico1, tde, ambiente, comentarios)values(1,'1', 'Beleza Pura', '10', '75', '10', '10', '10', '10', 'Teste, teste, teste, teste, teste')

 

Share this post


Link to post
Share on other sites

Esse id_usuario é primary key? Ou é apenas o id do usuário que está logado?

  • +1 1

Share this post


Link to post
Share on other sites
1 minuto atrás, mbmesquita disse:

 

é apenas o id do usuário que ta logado

Poderia exibir a modelagem do seu banco de dados?

Da tabela que você está tentando inserir os registros.

Share this post


Link to post
Share on other sites
Agora, Prog disse:

E não deu mensagem de erro? Não inseriu o registro?

Pois é, caso não tenha inserido talvez as colunas na query estão erradas...

Share this post


Link to post
Share on other sites
11 minutos atrás, jamesbond disse:

Poderia exibir a modelagem do seu banco de dados?

Da tabela que você está tentando inserir os registros.

 

10 minutos atrás, Prog disse:

E não deu mensagem de erro? Não inseriu o registro?

 

Aparentemente não há nenhum problema.

 

jamesbond e Prog Obrigado pela ajuda, conseguir resolver, montei a tabela no banco de dados de novo e simplesmente funcionou corretamente, muito obrigado!

Agora com a questão das checkbox, tem alguma luz pra me ajudar?

Share this post


Link to post
Share on other sites
24 minutos atrás, mbmesquita disse:

 

 

jamesbond e Prog Obrigado pela ajuda, conseguir resolver, montei a tabela no banco de dados de novo e simplesmente funcionou corretamente, muito obrigado!

Agora com a questão das checkbox, tem alguma luz pra me ajudar?

Qual seria o problema com as checkbox?

Share this post


Link to post
Share on other sites
Citar

jamesbond

 

Elas estão tudo ok, vão pro banco de dados somadas e tudo ok, só que eu gostaria que além de enviar pro banco de dados os valores somados, também fosse para o banco os nomes, de cada checkbox selecionada, entendeu mais ou menos?

 

E eu não tenho ideia de como fazer isso

Share this post


Link to post
Share on other sites

Como assim o nome de cada checkbox selecionada?

Você diz o name do input ou nome correspondente ao id do value?

 

Você está trabalhando  com relacionamento de tabelas.

Não tem necessidade de salvar no banco de dados o nome,

sendo que esses serviços talvez já estejam salvo em uma tabela servicos.

 

Quando você quiser exibir o nome de acordo com o ID escolhido,

basta você retornar apenas o nome daquele ID.

Share this post


Link to post
Share on other sites
3 minutos atrás, jamesbond disse:

Como assim o nome de cada checkbox selecionada?

Você diz o name do input ou nome correspondente ao id do value?

 

Você já trabalhando relacionando tabelas. Não tem necessidade de salvar no banco de dados o nome, sendo que esses serviços talvez já estejam salvo em uma tabela servicos.

Quando você quiser exibir o nome de acordo com o ID escolhido, basta você retornar apenas o nome daquele ID.

 

Sim, to trabalhando com tabelas relacionadas, mas nessa parte do checkbox não ta relacionado com nenhuma outra, porque ao escolher o serviço que fez, ela recebe a pontuação de cada serviço, só que para um controle interno queria saber exatamente qual serviço que a pessoa fez, entende? Porque no caso, só vai os valores somados e cai tudo em uma coluna da tabela, não em várias, entende?

 

<label for="servicosava1" >Serviços</label>
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="3" />Corte <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="4" />Escova <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="3" />Chapinha <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="5" />Pintura <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="5" />Hidratação <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="9" />Progressiva <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="10" />Outra Química <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="3" />Unha <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="4" />Depilação <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="10" />Penteado <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="10" />Maquiagem <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="3" />Sombrancelha <br />

 

No caso eu queria que a pessoa, ao selecionar os 3 primeiros inputs, caísse a soma dessas checkbox na coluna respectiva dela, que seria 10, e também o serviço que ela selecionou, caindo no banco de dados em algum lugar, ou colunas diferentes, ou todos em uma coluna só, mais ou menos isso que eu preciso.

Share this post


Link to post
Share on other sites

Antes de você fazer a soma você retorna os nome ou pega os id dos respectivos

e depois joga na query para saber os selecionados. 

 

Você tem que entender que os ID estão lá,

você só os perde após efetuar a soma.

 

Basta você decidir em salvar o nome de cada ou apenas os id.

 

  • +1 1

Share this post


Link to post
Share on other sites

Entendi mais ou menos, teria como mostrar um exemplo só de um para ter uma noção de como fazer? 

 

Porque no caso, esses valores somados são retornados em uma outra página, somando todos os valores dessa coluna por id de usuário logado, então eu não poderia retornar esses ID na mesma coluna, pois não retornaria os valores na outra página, certo ou errado?

Share this post


Link to post
Share on other sites
2 minutos atrás, mbmesquita disse:

Entendi mais ou menos, teria como mostrar um exemplo só de um para ter uma noção de como fazer? 

 

Porque no caso, esses valores somados são retornados em uma outra página, somando todos os valores dessa coluna por id de usuário logado, então eu não poderia retornar esses ID na mesma coluna, pois não retornaria os valores na outra página, certo ou errado?

O usuário seleciona os serviços no checbox -> envia o formulário -> você recebe todos esses dados -> através do for você checa a quantidade de serviços selecionados para poder somar -> você perde o id dos serviços

 

O fluxo que acontece é esse.

Me responda uma coisa, os números value do checkbox

é correspondente ao tipo do serviço ou o que?

Share this post


Link to post
Share on other sites

Sim, entendi o fluxo, só que antes de perder o id dos serviços, teria como mandar para alguma coluna na tabela, ou para algum lugar, não sei?!

 

São correspondentes ao tipo de serviço, só que alguns serviços tem o mesmo value, a mesma pontuação no caso.

Share this post


Link to post
Share on other sites
12 minutos atrás, mbmesquita disse:

Sim, entendi o fluxo, só que antes de perder o id dos serviços, teria como mandar para alguma coluna na tabela, ou para algum lugar, não sei?!

 

São correspondentes ao tipo de serviço, só que alguns serviços tem o mesmo value, a mesma pontuação no caso.

 

Sobre seus serviços possuírem os mesmos value acho bem estranho, mas enfim...

Rode esse código e veja se é o que queres:

 

<?php
$_POST['servicosava'] = ['2', '3', '5', '10'];

$soma = 0;
$servicos = '';

foreach ($_POST['servicosava'] as $key => $number)
{	
	if ($key == (count($_POST['servicosava']) - 1))
	{
		$servicos .= $number;
	}
	else
	{
		$servicos .= $number.',';
	}

	$soma += $number;
	
}

echo $soma .'<br/>'. $servicos;

 

  • +1 1

Share this post


Link to post
Share on other sites

Bem jamesbond, o código rodou, mas não mandou nada pro bando de dados, nem a soma das checks, nem os serviços, nem nada, retornei só o echo e deu isso:

 

20
2,3,5,10

 

Share this post


Link to post
Share on other sites
1 minuto atrás, mbmesquita disse:

Bem jamesbond, o código rodou, mas não mandou nada pro bando de dados, nem a soma das checks, nem os serviços, nem nada, retornei só o echo e deu isso:

 


20
2,3,5,10

 

Isso é um exemplo apenas. Para você ver como funciona e para que possa adaptar ao seu caso.

O código faz o valor total da soma dos dados enviados via post e

salva os respectivos serviços de acordo com o id.

 

Depois caso seja do seu interesse exibir os serviços,

basta receber essa informação, separar os id com um explode e retornar os nomes.

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By tii3030
      Olá pessoal, desenvolvi um pequeno código em PHP com a função de verificar e validar usuário e senha de um formulário, juntamente com o meu banco de dados MySql.
      Gostaria de saber como aprimorar o meu código para torna-lo mais seguro e mais próximo de algo "profissional". Lembrando que minha senha no banco está criptografada (PASSWORD_BCRYPT).
       
      <?php
          #----------------- INCLUDING FILE --> "conf.php"
          include('conf.php');
              if (isset($_POST['submit'])) {
             
      #--------------------------------INPUTS ---------------------------------------------#
                  $email = mysqli_real_escape_string($conexao, $_POST['email']);
                  $password = mysqli_real_escape_string($conexao, $_POST['password']);
      #-----------------------#----------------------#-----------------_#-------------------#
                  $query_select_email = "SELECT email FROM usuarios WHERE email = '$email'";
                  $select_email = mysqli_query($conexao,$query_select_email);
                  $query_select_password = "SELECT password FROM usuarios";
                  $select_password = mysqli_query($conexao,$query_select_password);
                  while($array = mysqli_fetch_array($select_password)) {
                  $logarray = $array['password'];
                  
                      if (password_verify($password, $logarray)) {
                          if (mysqli_num_rows($select_email) == 1) {
                              
                          $_SESSION['email'] = $email;
                          header('location: XXX.html');
                          exit();
                          }
                      }
                      else {
                          echo "Loguin ou senha incorretos";
                      }
                  $logarray = '0';
                  }
              }
      ?>
    • By michelmir
      Olá!
       
      Recentemente fiz uma postagem aqui no fórum a respeito de se carregar valores em um input text baseando-se na opção selecionada em uma select box, onde obtive uma solução. Por conta disso resolvi adicionar um complemento neste  meu código onde o mesmo deve carregar valores corretamente dentro de uma input text utilizando o plugin TypeAhead.js e o evento onchange do Jquery.
       
      Como forma de demonstrar a minha dúvida em funcionamento, criei uma página como forma de testar a solução. O que ocorre é que quando seleciona uma opção no select box  "Categorias", o Ajax manda um request para o php script onde o mesmo retorna os valores corretamente em JSON conforme a imagem do console do navegador Chrome abaixo:
       
       
       
      Até aqui os valores relacionados com a opção selecionada no select box "Categorias" são carregados corretamente porém se eu não atualizar a página "F5" e ao mesmo tempo eu selecionar alguma outra opção dentro do select box, o input text carrega além dos valores relacionados, todos os valores não relacionados com a opção selecionada ou seja, o input text somente carrega os valores corretamente se eu atualizar a página em questão.
       
      Abaixo uma imagem demonstrando os valores carregados em uma input text quando seleciono uma outra opçao no select box quando não se atualiza a página. Todos os valores não relacionados também são carregados:
       

       
      Abaixo publico o html e os scripts Ajax, Typeahead e PHP que estou utilizando neste projeto:
       
      HTML
      <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta charset="utf-8"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"> <!-- jQuery library --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <!-- jQuery UI library --> <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.css"> <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-3-typeahead/4.0.2/bootstrap3-typeahead.min.js"></script> </head> <body> <div class="container"> <br> <h1>DYNAMIC TWITTER TYPEAHEAD</h1> <br> <div class="row"> <?php // Include the database config file include_once 'dbConfig.php'; // Fetch all the country data $query = "SELECT * FROM categorias ORDER BY categoria ASC"; $result = $db->query($query); ?> <!-- categoria dropdown --> <div class="col-md-4"> <select id="categoriaFK" name="categoriaFK" class="form-control"> <option value="">seleciona categoria</option> <?php if($result->num_rows > 0){ while($row = $result->fetch_assoc()){ echo '<option value="'.$row['categoriaID'].'">'.$row['categoria'].'</option>'; } }else{ echo '<option value="">Categoria não encontrada</option>'; } ?> </select> </div> <div class="col-md-4" id="prod"> <div ><input type="text" name="produtos" id="produtos" class="form-control input-lg typeahead" autocomplete="off" placeholder="" /></div> </div> <div class="col-md-4"> <div id="imagem" name="imagem"></div> </div> </div> </div> </body> </html>  
      No script abaixo, o Ajax envia um request para o script PHP que por sua vez retorna os valores em JSON para o Ajax que envia para o TypeAhead e carrega o input text com valores relacionados. Após selecionar uma opção no input text, o Jquery envia um valor relacionado para a div "#imagem" :
       
      $(document).ready(function(){ var produtos; var nomes = []; // array var lista = {}; // objeto $('#categoriaFK').on('change', function(){ var queryID = $(this).val(); $.ajax({ url:"fetch.php", method:"POST", data:{categoria:queryID}, dataType:"json", success:function(data){ console.log(data); $.each(data, function(i, optionHtml){ $('#produtos').append(optionHtml); }); $("#imagem").empty(''); $(".typeahead").val(''); produtos = data; } }); $('.typeahead').typeahead({ source: function(query, result) { $.each(produtos, function(idx, item){ if(!~nomes.indexOf(item.nomeProduto)) nomes.push(item.nomeProduto); lista[item.nomeProduto] = item.imagem; }); return result(nomes); }, afterSelect: function (data) { var img = lista[data]; $('#imagem').html(img); }, }); }); });  
      Abaixo, o php script que seleciona os valores baseando-se no valor selecionado do select box e os envia em formato JSON para o Ajax:
       
      <?php require_once 'dbConfig.php'; if(!empty($_POST["categoria"])){ $query = " SELECT * FROM produtos WHERE categoriaFK = ".$_POST['categoria']." "; $result = $db->query($query); $data = array (); if ( $result->num_rows > 0 ) { while($row = $result->fetch_assoc ()) { $data[] = $row; } header("Content-type: application/json; charset=utf-8 cache-control: no-cache, no-store, must-revalidate"); echo json_encode($data); exit(); } } ?> No caso como mencionado acima, nesta página que criei demonstra o funcionamento de todo o código acima, porém acredito que devo modificar o script para que o mesmo carregue valores corretamente quando seleciono alguma opção no select box "Categorias" sem precisar atualizar a página para que o mesmo carregue corretamente. 
       
      Como posso proceder? Desde já agradeço a atenção de todos.
    • By noxer
      Boa tarde, Preciso atribuir o valor de uma textarea para uma var e a exibir em um p. Fiz bem simples usando js/jquery mas agora preciso fazer em php.
       
      Ja tentei $variavel = $_POST['nomedocampo']; mas não obtive resultado
       
       
      Segue o trecho em js
      <textarea class="wapf-input" ></textarea> <button class="sendPDF">PDF</button> <p class="geratedPDF"></p>  
      $('.sendPDF').on('click', toPDF) function toPDF() { var textareaValue = $('.wapf-input').val() $('.geratedPDF').text(textareaValue) }
    • By Deivid Santos
      Salve galera, estou quebrando a cabeça aqui, já pesquisei mas não achei nada sobre.
      Eu tenho alguns dados que busco no banco de dados e mostro em um datagrid, além do CRUD que implantei eu preciso ter a opção de mudar as posições no banco. Preciso fazer isso pois elas são informações que vão para um telão. e ele segue uma ordem na mostragem dos dados.
      Teria alguma forma de arrastar a linha do grid e assim ele mudar o ID do mesmo conforme a posição que ficaria e assim os outros também seriam atualizados?
      Como exemplo segue uma imagem de como ele funciona. por exemplo eu movimento o ID 1 na posição abaixo do ID 3, assim o ID 2 e 3 se tornariam 1 e 2 com essa movimentação e o que era 1 se torna 3.

       
      Agradeço qualquer ajuda que puder.
       
       
    • By Jefferson andre
      Boa tarde, por favor me ajudem com uma situacao que nao sei como proceder em linguagens web
       
      Tenho dois forms na mesma tela, ao selecionar o cliente e clicar no botao buscar dados, as informacoes que eu pegar no mysql vao "abastecer" os campos do segundo formulario, e entao enviadas para a inclusao utilizando um outro botao no final da pagina.
       
      Nao sei como atualizar as informacoes desses campos na tela, e que posteriormente serao enviados para o banco de dados incluindo as novas informacoes.
       
      Agradeço sugestoes sobre a tela enviada.

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.