augustuz 0 Denunciar post Postado Agosto 5, 2009 Pessoal, tenho o seguinte form: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link rel="shortcut icon" href="icon/favicon.ico"> <title>Cadastro de Revistas/Blitz</title> </head> <link rel="stylesheet" type="text/css" href="css/estilo.css"/> <body> <form method="post" action=""> <div id="boxes"> <div class="fixo"> <div class="titulo"> <h6>Cadastro de Usuários</h6> </div> <div class="conteudo"> <label><span>Nome</span><input name="nome" type="text" size="30" onfocus="this.className='muda'" onblur="this.className=''"/></label> <label><span>Unidade</span><select name="unidade" id ="unidade" onfocus="this.className='muda'" onblur="this.className=''"> <? require("config/conexao.php"); $combo = mysql_query("SELECT * FROM unidades"); // faz o loop pelos dados, e joga em um array while($linha = @mysql_fetch_array($combo)){ // atribui o array a uma variavel($mostra) $mostra = $linha['nome']; $tipo = $linha['tipo']; // imprime na tela as opções resgatadas do banco de dados echo "<option value='$mostra'>$mostra</option>"; } ?> </select></label> <label><span>Usuário</span><input name="usuario" type="text" size="30" onfocus="this.className='muda'" onblur="this.className=''"/></label> <label><span>Senha</span><input name="senha" type="password" size="30" onfocus="this.className='muda'" onblur="this.className=''""/></label> <input type="hidden" name="acao" value="cadastrar"/> <input type="submit" class="btn" value="Cadastrar "/> </div> <div> </div> </form> </body> </html> <?php if(isset($_POST['acao']) && $_POST['acao'] == 'cadastrar'){ $nome = (!get_magic_quotes_gpc()) ? addslashes($_POST['nome']) : $_POST['nome']; $unidade = (!get_magic_quotes_gpc()) ? addslashes($_POST["unidade"]) : $_POST["unidade"]; $usuario = (!get_magic_quotes_gpc()) ? addslashes($_POST['usuario']) : $_POST['usuario']; $senha = (!get_magic_quotes_gpc()) ? addslashes($_POST['senha']) : $_POST['senha']; if(empty($nome)){ echo '<script>alert("Preencha o campo Nome")</script>'; echo '<script>history.back()</script>'; exit; } if(empty($usuario)){ echo '<script>alert("Preencha o campo Usuario")</script>'; echo '<script>history.back()</script>'; exit; } if (empty($senha)){ echo '<script>alert("Preencha o campo Senha")</script>'; echo '<script>history.back()</script>'; exit; } $senha = md5($senha); require("config/conexao.php"); $Busca = mysql_query("SELECT * FROM usuarios WHERE usuario ='$usuario'"); if(mysql_num_rows($Busca) == 0){ $sql = "INSERT INTO usuarios (nome, unidade, usuario, senha, tipo)VALUES('$nome', '$unidade', '$usuario','$senha', '$tipo')"; $qr = mysql_query($sql) or die(mysql_error()); if($qr): echo '<script>alert("Cadastrado com sucesso!")</script>'; else: echo '<script>alert("Erro ao cadastrar")</script>'; endif; }else echo '<script>alert("Usuario ja cadastrado no sistema!")</script>'; } session_start(); if(isset($_GET['acao']) && $_GET['acao'] == 'sair'): unset($_SESSION['usuario']); unset($_SESSION['senha']); session_destroy(); endif; if(!isset($_SESSION['usuario']) && !isset($_SESSION['senha'])): header("location:../index.php"); endif; ?> quando eu gravo o tipo de unidade $tipo = $linha['tipo']; no banco ele não grava o valor certo e grava 11 para qualquer um, teria como eu pegar mais de um atributo de uma tabela utilizando o mesmo while. Teria uma forma melhor de fazer isso? Compartilhar este post Link para o post Compartilhar em outros sites
augustuz 0 Denunciar post Postado Agosto 5, 2009 [Resolvido]Fiz uma consulta na tabela unidades procurando o nome da unidade do usuário e peguei o tipo que ela é $sql = "SELECT * FROM usuarios WHERE usuario = '$usuario' AND senha = '$senha'"; $qr = mysql_query($sql) or die(mysql_error()); $linha = mysql_fetch_array($qr); $nome_unid = $linha['unidade']; $sqlc = "SELECT * FROM unidades WHERE nome LIKE '$nome_unid'"; $qrc = mysql_query($sqlc) or die(mysql_error()); $aux = mysql_fetch_array($qrc); $tipo = $aux['tipo'];depois uso o tipo para direcionar o usuário para a página de sua unidade!Porém se tivesse conseguido pegar 2 atributos no mesmo while do select, não precisaria fazer essa comparação! Compartilhar este post Link para o post Compartilhar em outros sites