Jump to content
vinihhylian0103

Gravar Dados de um Campo Select no Banco de Dados!

Recommended Posts

Boa noite, eu tenho um campo no meu cadastro para o usuário selecionar seu curso, que seria esse:

 

<select name="curso" type="text" required=".$this->fields["cursos"].">
       <option value="Informática">Informática</option>
       <option value="ADM">Administração</option>
       <option value="Edificações">Edificações</option> />

e eu gostaria de saber como gravar essa escolha no banco de dados, segue o código de inserrir

 

<?php

 if(!$conect=mysqli_connect('localhost','root','','cadastros')) 
 	die ('erro ao conectar');
	
#Recolhendo os dados do formulário
	$nome=mysqli_real_escape_string($conect, $_POST['nome']);
	$sobrenome=mysqli_real_escape_string($conect, $_POST['sobrenome']);
	$data=mysqli_real_escape_string($conect, $_POST['data_nasc']);
	$rm=mysqli_real_escape_string($conect, $_POST['rm']);
	$curso=mysqli_real_escape_string($conect, $_POST['curso']);
	$email=mysqli_real_escape_string($conect, $_POST['email']);
	$senha=mysqli_real_escape_string($conect, $_POST['senha']);

# Verificando apenas um campo, no caso dado1.
	$sql = $conect->query("SELECT * FROM usuarios WHERE email='$email'");
		if(mysqli_num_rows($sql) > 0){
			echo "Este email já foi cadastrado!";
		exit(); 
	} 
		else {
 		
 		if(!$conect->query("INSERT INTO usuarios(nome, sobrenome, data_nasc, rm, curso, email, senha) 
 			VALUES('$nome','$sobrenome','$data','$rm','$curso','$email','$senha')")) 
 		
 		die ('Os dados não foram inseridos');

 		echo "<script type='text/javascript'>alert('Cadastro Concluído!');</script>";
 		header('Location: index.html');
}

Muito obrigado desde já!

Share this post


Link to post
Share on other sites

Segue exemplo para compreensão:

 

1 - Tabelas a serem utilizadas

 

SQL

CREATE TABLE usuarios (
	idUsuario INT NOT NULL AUTO_INCREMENT,
	nome VARCHAR(100) NOT NULL,
	PRIMARY KEY(idUsuario)
);

CREATE TABLE cursos (
	idCurso INT NOT NULL AUTO_INCREMENT,
	nome VARCHAR(50) NOT NULL,
	PRIMARY KEY(idCurso)
);

CREATE TABLE usuarios_cursos (
	idMatricula INT NOT NULL AUTO_INCREMENT,
	idUsuario INT NOT NULL,
	idCurso INT NOT NULL,
	dataMatricula DATE,
	PRIMARY KEY(idMatricula),
	FOREIGN KEY (idUsuario) REFERENCES usuarios (idUsuario),
	FOREIGN KEY (idCurso) REFERENCES cursos (idCurso)
);

 

"LIGAÇÃO DAS TABELAS"

image.png.50f7f802e9f44e433ae6dc57b3209c16.png

 

2 - Implementação

Pós criação das tabelas, liste os cursos presentes no banco de dados

de tal modo que siga o exemplo abaixo!

# Repare que no atributo value="" você deverá inserir 
# o respectivo ID do curso...
<select name="curso">
	<option value="1">Informática</option>
	<option value="2">Administração</option>
	<option value="3">Edificações</option>
</select>

 

Assim, quando o usuário escolher um curso, você registra na tabela 

usuarios_cursos ID do usuário em questão; o ID do curso selecionado;

e a data atual.

Share this post


Link to post
Share on other sites

Disponível ;)

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 michael450
      Senhores, boa tarde.
       
      Estou com um probleminha... rss', preciso fazer a listagem de uma função da biblioteca "SPED-NFe"   na qual consulto quais as NFe que emitiram contra meu CNPJ, porém o ele executa toda a função e depois me trás o resultado, eu gostaria de trazer o resultado instantaneamente, como se fosse uma atualização segundo a segundo.
       
       
      Essas informações não são salvas em DB, é apenas para consulta.
      Se alguém puder ajudar serei muito grato,
       
      Abraço.
       
      Michael Douglas
    • By ricardonews
      olá pessoal, alguém ja teve dificuldade de logar no banco com um formulario de login feito pelo ajax quando a senha é criptografada?
      a minha está o sendo pelo md5 e quando deixo sem criptografia eu logo no banco.  Eu gostaria de logar com criptografia.
      vou deixar  a index e o arquivo que busca no banco de dados
      <!doctype html> <html> <?php require_once"config.php"; ?> <head> <title>Formulario de login</title> <style type="text/css"> html{ height:100%; background: linear-gradient(rgba(38, 128, 101, 0.9), rgba(52, 177, 140, 0.9)); } #div_login{ width:500px; margin:40px auto; position:relative; background-color: #ffffff; padding: 20px; border-radius: 5px; } #message{ width:100%; text-align:center; color:red; margin-bottom: 20px; } #div_login h1 { text-align: center; } #div_login input, #div_login textarea,#div_login a{ padding:10px; border:1px solid rgba(38, 128, 101, 0.9); border-radius:4px; -moz-border-radius:4px; -webkit-border-radius:4px; outline:none; box-sizing: border-box; width:100%; font:14px "Trebuchet MS", tahoma, arial; color:#090; margin-bottom:10px; } #div_login #but_submit,#div_login a { background-color: #27ae60; font-weight: bold; text-transform: uppercase; color: #ffffff; width: auto; margin: 0; padding: 10px 20px; } </style> <!--<link href="style.css" rel="stylesheet" type="text/css">--> <script src="jquery-3.2.1.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function(){ $("#but_submit").click(function(){ var username = $("#meu_nome").val().trim(); var password = $("#minha_senha").val().trim(); if( username != "" && password != "" ){ $.ajax({ url:'pesquisar.php', type:'post', data:{username:username,password:password}, success:function(response){ var msg = ""; if(response == 1){ window.location = "home.php"; }else{ msg = "email e senhas invalidos!"; } $("#message").html(msg); } }); } }); }); </script> </head> <body> <div class="container"> <div id="div_login"> <h1>Login</h1> <div id="message"></div> <div> <input type="text" class="textbox" id="meu_nome" name="meu_nome" placeholder="email" /> </div> <div> <input type="password" class="textbox" id="minha_senha" name="minha_senha" placeholder="senhas"/> </div> <div> <input type="button" value="logar" name="but_submit" id="but_submit" /> <a href="inicio.php"><strong>Cadastrar</strong></a> </div> </div> </div> </body> </html> agora vem oque busca os dados no banco e é justamente essa parte que eu não entendo oque acontece.
      <?php require_once "config.php"; // AQUI É O PESQUISAR PHP $uname = mysqli_real_escape_string($con,$_POST['username']); $password = mysqli_real_escape_string($con,$_POST['password']); if ($uname != "" && $password != ""){ $sql_query = "SELECT count(*) as cntUser FROM usuarios WHERE email='".$uname."' and password='".$password."'"; $result = mysqli_query($con,$sql_query); $row = mysqli_fetch_array($result); $count = $row['cntUser']; if($count > 0){ $_SESSION['uname'] = $uname; echo 1; }else{ echo 0; } } desde já fico agradeço 
    • By D2th3
      Pessoal,

      Sou intermediário em PHP e estou estudando OO. Vi exemplos de do MVC Pattern usando template view contudo de simples substituição do marcador pelos dados. Eu gostaria que você me pudessem indicar um material de estudo, exemplos de código de um Model, Controller e View que carregasse a template e exibisse, contudo dentro dessa template existisse condicionais e loops como marcadores a serem processados pelo PHP.
       
      Agradeço a ajuda aos meus estudos.
    • By henricv
      Bom dia.
       
      Estou iniciando na área de desenvolvimento de testes automatizados em Ruby+Cucumber+Capybara.
      Atualmente, estou com o projeto de automação com informações chumbadas no código, porém gostaria de realizar consultas no banco de dados da empresa, para aumentar o nível de minha aplicação.
       
      O problema é que não estou conseguindo achar algum tutorial, ou script como em outras linguagens, que realize esta conexão com o banco de dados. Não utilizo Rails em minha aplicação.
       
      Tentei utilizar o comando em minha aplicação, seguindo um tutorial que estava mais organizado, porém não consegui realizar a conexão correta.
      gem install mysql2  
      Poderiam me ajudar?
×

Important Information

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