Jump to content
mateusjosepretti

Campos Dinâmicos e Inserção na Base MySql

Recommended Posts

Gostaria de uma ajuda.
Estou com o seguinte código:

<?php
if($nivelLogado ==0){
	echo '<div class="alert alert-danger">
                      <button type="button" class="close" data-dismiss="alert">×</button>
                      <strong>Erro ao cadastrar!</strong> Não foi possível cadastrar o usuário.
                </div>';
	sleep(10);
	header("Location: home.php");exit;
}

error_reporting(0);

?>
<script type="text/javascript">
    function optionCheck(){
        var option = document.getElementById("nivel").value;
        if(option == "0"){
            document.getElementById("professores").style.visibility ="visible";
        }
        else{
            document.getElementById("professores").style.visibility ="hidden";
        }
    }
</script>
<script type="text/javascript">
var qtdeCampos = 0;
	var qtdeCamposs = 0;

function addCampos() {
var objPai = document.getElementById("campoPai");
//Criando o elemento DIV;
var objFilho = document.createElement("div");
//Definindo atributos ao objFilho:
objFilho.setAttribute("id","filho"+qtdeCampos);

//Inserindo o elemento no pai:
objPai.appendChild(objFilho);
//Escrevendo algo no filho recém-criado:
document.getElementById("filho"+qtdeCampos).innerHTML = "<input type='text' id='campo"+qtdeCampos+"' name='materia["+qtdeCamposs+"]' value=''> <input type='button' onClick='removerCampo("+qtdeCampos+")' value='-'>";
qtdeCampos++;
}

function removerCampo(id) {
var objPai = document.getElementById("campoPai");
var objFilho = document.getElementById("filho"+id);

//Removendo o DIV com id específico do nó-pai:
var removido = objPai.removeChild(objFilho);
}
</script>
<style type="text/css">
.professores{
	height:100px;
	width:300px;
	border:1px;
	visibility:hidden;
	}
</style>
<script type="text/javascript">
jQuery(function($){
   $("#date").mask("99/99/9999",{placeholder:"dd/mm/yyyy"});
});
</script>
<div class="main">
  <div class="main-inner">
    <div class="container">
     <div class="row">
     	  
            <div class="span12">	      		
	      		<div id="target-1" class="widget">	 
                
                <div class="widget-header">
	      				<i class="icon-file"></i>
	      				<h3>Cadastrar Usuário Administrativo</h3>
	  				</div> <!-- /widget-header -->
                     			
	      			<div class="widget-content">	      				
			      		
                        <?php
	  	if(isset($_POST['cadastrar'])){
			for( $i = 0 , $x = count( $_POST[ 'materia' ] ) ; $i < $x ; ++ $i ) {
	                      $materiapost = $_POST[ 'materia' ][ $i ];
	              }
			$nome 			= trim(strip_tags($_POST['nome']));
			$email 			= trim(strip_tags($_POST['email']));
			$usuario 		= trim(strip_tags($_POST['usuario']));
			$senha 			= trim(strip_tags($_POST['senha']));
			$nivel	 		= trim(strip_tags($_POST['nivel']));
			$professor		= trim(strip_tags($_POST['professor']));
			
			
			
		$insert = "INSERT into login (nome, email, usuario, senha, nivel, professor, materia) VALUES (:nome, :email, :usuario, :senha, :nivel, :professor, :materiapost)";
		
		try{
			$result = $conexao->prepare($insert);
			$result->bindParam(':nome', $nome, PDO::PARAM_STR);
			$result->bindParam(':email', $email, PDO::PARAM_STR);
			$result->bindParam(':usuario', $usuario, PDO::PARAM_STR);
			$result->bindParam(':senha', $senha, PDO::PARAM_STR);
			$result->bindParam(':nivel', $nivel, PDO::PARAM_STR);
			$result->bindParam(':professor', $professor, PDO::PARAM_STR);
			$result->bindParam(':materiapost', $materiapost, PDO::PARAM_STR);
			$result->execute();
			$contar = $result->rowCount();
			if($contar>0){
				echo '<div class="alert alert-success">
                      <button type="button" class="close" data-dismiss="alert">×</button>
                      <strong>Sucesso!</strong> O usuário foi cadastrado.
                </div>';
				
			}else{
				echo '<div class="alert alert-danger">
                      <button type="button" class="close" data-dismiss="alert">×</button>
                      <strong>Erro ao cadastrar!</strong> Não foi possível cadastrar o usuário.
                </div>';
			}			
		}catch(PDOException $e){
			echo $e;
		}	
						
						
						
						
						
							
					}else
						$msg[] = "Desculpe! Ocorreu um erro...";
						
				foreach($msg as $pop)
				echo '';
					//echo $pop.'<br>';						
	 
	 ?>
     	
                        <div class="tab-pane" id="formcontrols">
								<form id="edit-profile" class="form-horizontal" action="" method="post" enctype="multipart/form-data">
								
										
										<div class="control-group">											
											<label class="control-label" for="username">Nome Completo</label>
											<div class="controls">
												<input type="text" class="span6 disabled" id="nome" value="" name="nome" required>
											</div> <!-- /controls -->				
										</div> <!-- /control-group -->
                                                             
                        				<div class="control-group">											
											<label class="control-label" for="username">E-Mail</label>
											<div class="controls">
												<input type="text" class="span6 disabled" id="email" value="" name="email" required>
											</div> <!-- /controls -->				
										</div> <!-- /control-group -->
                       					
                       					<div class="control-group">											
											<label class="control-label" for="username">Usuário</label>
											<div class="controls">
												<input type="text" class="span6 disabled" id="usuario" value="" name="usuario" required>
											</div> <!-- /controls -->				
										</div> <!-- /control-group -->
                     					
                     					<div class="control-group">											
											<label class="control-label" for="username">Senha</label>
											<div class="controls">
												<input type="password" class="span6 disabled" id="senha" value="" name="senha" required>
											</div> <!-- /controls -->				
										</div> <!-- /control-group -->
                      					<div class="control-group">
                      						<label class="control-label" for="username">Nível de Acesso</label>
                      						<div class="controls">
                      							<select id="nivel" name="nivel" onchange="optionCheck()" required>
                      								<option disabled selected value> -- Selecione -- </option>
												    <option value="0" >Professor</option>
												    <option value="1">Administrador</option>
												</select>
											</div>
										</div>      					             					
                     					
                     					
                     					<div id="professores" class="professores" >
                      						<!--<div class="alert alert-danger">
												<button type="button" class="close" data-dismiss="alert">×</button>
                      							<strong>Atenção!</strong> Preencha os campos abaixo somente se houver selecionado a opção "Professor" acima!
                       						</div>-->
                       						
                       						<div class="control-group">											
												<label class="control-label" for="username">Matéria</label>
												
												<div class="controls">
													<div id="campoPai"></div>
													<input type="button" value="+" onclick="addCampos()">
												</div> <!-- /controls -->				
											</div> <!-- /control-group -->
                       					
                       						<div class="control-group">											
												<label class="control-label" for="username">Professor</label>
												<div class="controls">
													<input type="text" class="span6 disabled" id="professor" value="" name="professor">
												</div> <!-- /controls -->				
											</div> <!-- /control-group -->
                        				</div>
                        				
                        				<div class="form-actions">
											<input type="submit" name="cadastrar" class="btn btn-primary" value="Salvar">
											<input type="reset" class="btn" value="Cancelar">
										</div> <!-- /form-actions -->
                  				</form>
                        
                        
                        
		      		</div> <!-- /widget-content -->
	      		</div> <!-- /widget -->
      		</div><!-- span 12 -->
            
            
    </div><!-- row -->        
     
      
          
        </div>
        <!-- /span6 --> 
      </div>
      <!-- /row --> 
    </div>
    <!-- /container --> 
  </div>
  <!-- /main-inner --> 
</div>
<!-- /main -->

<script type="text/javascript" src="editor/nicEdit.js"></script>
<script type="text/javascript">
	bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
</script>


E estou querendo inserir os dados na mesma tabela de login ou criar uma outra tabela que citasse os id de usuário seguido das matérias dos respectivos usuários. Preferia na mesma tabela mas se não tiver jeito eu arrumo outra...

 

Abraços.

Share this post


Link to post
Share on other sites

velhinho é muito código aí mas o que posso te adiantar agora é não misturar dados diferentes na mesma tabela. os bancos de dados são chamados relacionais porque devem ser usados para manter relação entre tabela. dados de usuários ficam em uma tabela, dados do que os usuários fazem ficam em outra(s) tabela(s) e elas se relacionam pelo id do usuário id esse que deve ser chave primária pra garantir que é único pra cada usuário. um exemplo vamos supor um sistema de mercadinho. vai ter uma tbClientes com os campos id, nome, email, telefone, endereço que são os dados do cliente. vai ter uma tbVendas com os campos id, idCliente, data, hora, observacoes. no campo idCliente irá a id do cliente na tbClientes. E vai ter pelo menos uma terceira tabela tbDetalhesVenda para registrar os produtos comprados pelo cliente. essa tabela terá id da venda na tbVendas. por enquanto é isso

Share this post


Link to post
Share on other sites

 

1 minuto atrás, marsolim disse:

velhinho é muito código aí mas o que posso te adiantar agora é não misturar dados diferentes na mesma tabela. os bancos de dados são chamados relacionais porque devem ser usados para manter relação entre tabela. dados de usuários ficam em uma tabela, dados do que os usuários fazem ficam em outra(s) tabela(s) e elas se relacionam pelo id do usuário id esse que deve ser chave primária pra garantir que é único pra cada usuário. um exemplo vamos supor um sistema de mercadinho. vai ter uma tbClientes com os campos id, nome, email, telefone, endereço que são os dados do cliente. vai ter uma tbVendas com os campos id, idCliente, data, hora, observacoes. no campo idCliente irá a id do cliente na tbClientes. E vai ter pelo menos uma terceira tabela tbDetalhesVenda para registrar os produtos comprados pelo cliente. essa tabela terá id da venda na tbVendas. por enquanto é isso

Sim, mas o problema é como inserir os dados, mesmo em tabelas relacionadas, no meu db.

 

Vlw, aguardo.

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 babylon
      Ola amigos,
       
      Estava querendo criar algo para meu site, um botao igual do site abaixo para calcular formas de pagamento "ver formas de pagamento":
       
      https://www.chipart.com.br/pc-gamer-level-one-black-amd-3400g
       
      Segue imagem em anexo.
       
      Alguem poderia me ajudar se tem algum script algo pronto ou que ajude para abrir pop up modal?
       
      Obrigado a todos.
       
       

    • By srs1999_
      Tópico
       
      Site em Código
      Sobre desenvolver sites sem o wordpress que ja tá tudo ali feito que seja um site dinâmico ou seja com banco de dados , APIs de pagamento, Painel para o usuário ,  além de todas  as funções que tem no wordpress e você teria propriedade pra explicar sobre detalhes mais técnicos da produção onde no wordpress só quem entende de progrqmação explicaria algum detalhe técnico 
      Então usando basicamente : 
      FRONT END 
      HTML 
       CSS 
      JAVASCRIPT 
      ALGUMA DE BACKEND COMO PHP E BANCO DE DADOS
      Pode se criar sites/sistemas tão bons ou melhores que no wordpress
       
      Fato : o proprio wordpress é feito em php e ate o proprio facebook tbm em php
      Fato 2 :  cerca de 70% dos sites são feitos em Wordpress
       
      Acho esse lance de procurar o caminho mais fácil limita muito a pessoa por exemplo é facil editar imagens no paint bem intuitivo , agora para editar no photoshop com muitas outras possibilidades  acaba sendo importante ir explorando essa elaboração mais difícil  com um mesmo objetivo. No caso do exemplo ( editar imagens )  
       
      Reflexão:
      Vale a pena se dedicar a trabalhar com a ferramenta Wordpress apenas por ser um meio rápido de ganhar dinheiro ?
      Ou trabalhar sem wordpress  usando tudo que exigido pra criar coisas originais mais que não seria tão rápido a produção. Mas creio que além dos sites feitos também geraria a possibildade de vender o sistema web criado para o cliente personalizar .
       
      Você Desenvolveria de que forma :
       Wordpress apenas ?
       
      Conhecer programação pra trabalhar 
      com  Wordpress ?
       
      Produzir tudo só com programação totalmente dinâmico sem  Wordpress?
×

Important Information

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