alissong 1 Denunciar post Postado Outubro 19, 2007 Pessoal,Estou tendo criar um sistema que tem um login e senha. Veja o código: // obtém os valores digitados$login = $_POST["login"];$senha = $_POST["senha"];// Conexão com o banco de badosinclude("conexao.php");$result = mysql_query("select * from professores where login = '$login'");$recset=mysql_num_rows($result);if($recset==0) // testa se a consulta retornou algum registro{echo "<html><body>";echo "<hr>";echo "<p align=\"center\">Usuários não encontrado !</p>";echo "<p align=\"center\"><a href=\"index.php\">Voltar</a></p>";echo "<hr>";echo "</body></html>";}else{if ($senha !=mysql_result($result,0,"senha")) // confere senha{echo "<html><body>";echo "<hr>";echo "<p align=\"center\">A senha está incorreta !</p>";echo "<p align=\"center\"><a href=\"index.php\">Voltar</a></p>";echo "<hr>";echo "</body></html>";}else // usuário e senha corretos. vamos criar os cookies{ session_start(); $_SESSION["cod_professor"] = $recset["codigo"]; $_SESSION["login"] = $recset["login"]; header("Location: sgp.php"); exit; mysql_close($conexao);}}?>Mas quero exibir os dados do professor logando. Veja o código:<?phpsession_start();$login = $_SESSION["login"]; #Arquivo de funções ************************************* include("conexao.php");#********************************************************$sql ="select * from professores WHERE login ='$login'"; $resultado = mysql_query($sql); $linha = mysql_fetch_array($resultado);$nome = $linha["nome"];$data_nascimento = $linha["data_nascimento"];$complemento = $linha["complemento"];$bairro = $linha["bairro"];$cidade = $linha["cidade"];$estado = $linha["estado"];$cidade = $linha["cidade"];$telefone = $linha["telefone"];$celular = $linha["celular"];$senha = $linha["senha"];?><html><head><title>SGP - Professores</title><link href="estilo.css" rel="stylesheet" type="text/css"></head><body bgcolor="#FFFFFF"><form name="form1" method="post" action="/escolas/professores/dados.php"> <table width="300" border="1" align="center" cellpadding="2" cellspacing="0" bordercolor="#EBE9ED"> <tr> <td width="110">Professor:</td> <td width="190"><input name="nome" type="text" value="<?=$linha["nome"]?>" size="35"></td> </tr> <tr> <td width="110">Data Nascemento:</td> <td width="190"><input name="data_nascimento" type="text" value="<?=$linha["data_nascimento"]?>" size="35"></td> </tr> <tr> <td width="110">Endereço:</td> <td width="190"><input name="endereco" type="text" value="<?=$linha["endereco"]?>" size="35"></td> </tr> <tr> <td width="110">Complemento:</td> <td width="190"><input name="complemento" type="text" value="<?=$linha["complemento"]?>" size="35"></td> </tr> <tr> <td width="110">Bairro:</td> <td width="190"><input name="bairro" type="text" value="<?=$linha["bairro"]?>" size="35"></td> </tr> <tr> <td width="110">Cidade:</td> <td width="190"><input name="cidade" type="text" value="<?=$linha["cidade"]?>" size="35"></td> </tr> <tr> <td width="110">Estado:</td> <td width="190"><input name="estado" type="text" value="<?=$linha["estado"]?>" size="35"></td> </tr> <tr> <td width="110">Telefone:</td> <td width="190"><input name="telefone" type="text" value="<?=$linha["telefone"]?>" size="35"></td> </tr> <tr> <td width="110">Celular:</td> <td width="190"><input name="celular" type="text" value="<?=$linha["celular"]?>" size="35"></td> </tr> <tr> <td width="110">Senha:</td> <td width="190"><input name="senha" type="password" value="<?=$linha["senha"]?>" size="35"></td> </tr> <tr> <td width="110">Confirma Senha:</td> <td width="190"><input name="confirma" type="password" size="35"></td> </tr> <tr align="right"> <td colspan="2"><input type="hidden" name="id" value="7"> <input type="hidden" name="Alterar" value="ok"> <input type="submit" name="Submit" value="Alterar"></td> </tr></table></form></body></html>Portanto, clico no link o formulário não exibe nada.Alguem pode me ajudar nesse código.Um abraço.Alissong Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Outubro 20, 2007 você mudou a variavel q pega o usuario na session nas duas paginas, numa esta com um nome na outra com outro nome, nunca ira exibir o q você ker.... Compartilhar este post Link para o post Compartilhar em outros sites
alissong 1 Denunciar post Postado Outubro 20, 2007 Igo,Valeu Cara, Agora deu certo.Mas está exibindo esse erro estranho:A versão do PHP 5.2.3 Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0Um abraço.Alissong Compartilhar este post Link para o post Compartilhar em outros sites
GuttoSP 2 Denunciar post Postado Outubro 20, 2007 Acrescente essas linhas ao seu php.ini session.bug_compat_42 = 1session.bug_compat_warn = 0 Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Outubro 20, 2007 Acrescente essas linhas ao seu php.ini session.bug_compat_42 = 1session.bug_compat_warn = 0 http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif Compartilhar este post Link para o post Compartilhar em outros sites
alissong 1 Denunciar post Postado Outubro 20, 2007 GuttoSp e The Cod,Acrescentei a linha que vocês pediram, bom resolveu o problema, mas para exibir os formulários no quadro especifico preciso habilitar essa linha: register_globals = OnMas veja a tradução do próprio php.ini sobre essa linha: Você deveria fazer seu melhor escrever seus manuscritos de forma que eles não requerem register_globals para ser em; Usando variáveis de forma como globals podem conduzir facilmente para possíveis problemas de segurança, se o código não é muito bem pensado.Veja o código que coloco no formulário principal:<td width="585" valign="top"><p align="center"><b>Bem-vindo Professor(a)</b></p><?phpif (file_exists($menu.'.php')){include ($menu.'.php');}else {include('principal.php');}?></td>Alguem sabe como acertar isso ou não tem jeito.Um abraço.Alissong Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Outubro 20, 2007 Não tem problema, podes habilitar o register_globals Compartilhar este post Link para o post Compartilhar em outros sites
GuttoSP 2 Denunciar post Postado Outubro 20, 2007 Quando você usa o code acima dá algum erro? Qual? Seria bom você entender um pouco sobre a diferença entre on e off antes de sair habilitando e criando qualquer script. http://www.php.net/register_globals Compartilhar este post Link para o post Compartilhar em outros sites
alissong 1 Denunciar post Postado Outubro 20, 2007 GuttoSp,Não exibi nem um erro, mas os formulários não carrega. Veja o código que uso na página principal para chamar as outras páginas: <td width="165" valign="top" bgcolor="#EBE9ED"><p><a href="?menu=index">Página Inicial</a></p><p><a href="?menu=cad_professor">Dados cadastrais</a></p><p><a href="?menu=cad_notas">Notas</a></p><p><a href="?menu=cad_frequencia">Frequências</a></p><p><a href="?menu=cad_mensagem">Mensagens</a></p><p><a href="deslogar.php">Sair</a></p><br></td> Um abraço.Alissong Compartilhar este post Link para o post Compartilhar em outros sites
GuttoSP 2 Denunciar post Postado Outubro 20, 2007 Coloca esse code logo no início da página, se tiver session_start(), coloca logo depois, se não tiver, coloca na primeira linha: PHP error_reporting(E_ALL); Ele vai te mostrar o erro que está ocorrendo. Compartilhar este post Link para o post Compartilhar em outros sites
alissong 1 Denunciar post Postado Outubro 20, 2007 GuttoSP,Habilitei globals_register = off e fiz as alteração que você pediu. Bom, agora exibe esse erro: Notice: Undefined variable: menu in C:\Arquivos de programas\Apache Group\Apache\htdocs\mestrado\professores\SGP.PHP on line 43Um abraço.alissong Compartilhar este post Link para o post Compartilhar em outros sites
GuttoSP 2 Denunciar post Postado Outubro 20, 2007 Essa mensagem está informando que existe uma variável indefinida, (deve ser $menu = $_GET["menu"]; ) Aqui você poderá ver uma explicação sobre (em francês) http://frederic.bouchery.free.fr/?2004/10/...riable-Ou-Index Para terminar esse tipo de mensagem, basta tirar o código que te passei. O correto seria que você inicializasse as variáveis, para depois usá-las. Como isso não ocorreu, exibe essa mensagem. Posta seu script atual e explica o que você quer fazer. Se estiver usando includes anexe ou cole o code dos arquivos para serem analizados, se estiver usando banco de dados poste a estrutura da sua tabela e o nome do BD. Compartilhar este post Link para o post Compartilhar em outros sites
alissong 1 Denunciar post Postado Outubro 20, 2007 GuttoSP, O código completo ficou assim: 1- Pagina principal <?php session_start(); $login = $_SESSION["login"]; ?> <html> <head> <title>SGP - PROFESSORES</title> <link href="estilo.css" rel="stylesheet" type="text/css"> </head> <body bgcolor="#FFFFFF"> <table width="750" border="0" align="center" cellpadding="4" cellspacing="0" bordercolor="#EBE9ED"> <tr> <td colspan="2" valign="top" bgcolor="#EBE9ED"> <table width="100%" border="0" cellspacing="0" cellpadding="2"> <tr> <td width="65%"> <? include ("cumprimento.php");?> <? echo "<b>-$login</b> - ";?></td> <td align="right"> <b>Data:</b> <?include ("data.php");?></td> </tr> </table> </td> </tr> <tr> <td width="165" valign="top" bgcolor="#EBE9ED"> <p><a href="?menu=index">Página Inicial</a></p> <p><a href="?menu=cad_professor">Dados cadastrais</a></p> <p><a href="?menu=cad_notas">Notas</a></p> <p><a href="?menu=cad_frequencia">Frequências</a></p> <p><a href="?menu=cad_mensagem">Mensagens</a></p> <p><a href="deslogar.php">Sair</a></p> <br> </td> <td width="585" valign="top"> <p align="center"><b>Bem-vindo Professor(a)</b></p> <?php $menu = $_GET["menu"]; if (file_exists($menu.'.php')){ include ($menu.'.php'); } else { include('principal.php'); } ?> </td> <tr align="right" bgcolor="#EBE9ED"> <td colspan="2"</td> </tr> </body> </html> 2- Pagina secundário - Cadastro de Frequencia <html> <head> <title>Frequencia</title> <script language="javascript"> function valida_frequencia () { indice = freq.cod_aluno.selectedIndex; if (freq.cod_aluno.options[indice].text == "OPÇÕES"){ alert("O campo ALUNO deve ser escolhido!"); freq.cod_aluno.focus(); return false; } indice = freq.cod_disciplina.selectedIndex; if (freq.cod_disciplina.options[indice].text == "OPÇÕES"){ alert("O campo DLISCIPLINA deve ser escolhido!"); freq.cod_disciplina.focus(); return false; } if (freq.quantidade.value=="") { alert ("O campo QUANTIDADE deve ser digitado!"); freq.quantidade.focus(); return false; } if (isNaN(freq.quantidade.value)){ alert("O campo QUANTIDADE deve conter apenas números!"); freq.quantidade.value = ""; freq.quantidade.focus(); return false; } if (freq.lancamento.value == ""){ alert("O campo LANÇAMENTO deve ser preenchido!"); freq.lancamento.focus(); return false; } barras = freq.lancamento.value.split("/"); if (barras.length == 3) { dia = barras[0]; mes = barras[1]; ano = barras[2]; resultado = (!isNaN(dia) && (dia > 0) && (dia < 32)) && (dia.length == 2) && (!isNaN(mes) && (mes > 0) && (mes < 13)) && (mes.length == 2) && (!isNaN(ano) && (ano.length == 4) && (ano >= 1900)); if (!resultado) { alert("Formato de DATA inválido!"); freq.lancamento.value = ""; freq.lancamento.focus(); return false; } } else { alert("Formato de DATA inválido! Faltou alguma \"/ \""); freq.lancamento.value = ""; freq.lancamento.focus(); return false; } return true; } </script> </head> <body> <?php // Conectar com banco mysql include("conexao.php"); $aluno = mysql_query("select * from alunos ORDER BY nome"); $menu1 = mysql_fetch_assoc($aluno); $disciplina = mysql_query("select * from disciplinas order by nome"); $menu2 = mysql_fetch_assoc($disciplina); ?> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td background="imagens/bg_04.jpg"><div align="center"><b><font color="#FFFFFF" face="Times New Roman, Times, serif">CADASTRO DAS COMPRAS</font></b></div></td> </tr> <tr> <td height="253"><form name="freq" method="post" action="?menu=inserir_frequencia" onSubmit="return valida_frequencia()"> <br><table width="100%" border="0" cellspacing="0" cellpadding="2"> <tr> <td width="18%"><font size="2" face="Arial, Helvetica, sans-serif"><b>Aluno..::</b></font></td> <td width="82%"><select name="cod_aluno" id="cod_aluno"> <option value="0">OPÇÕES</option> <?php do { ?> <option value="<?php echo $menu1['cod_aluno']?>"><?php echo $menu1['nome']?></option> <?php } while ($menu1 = mysql_fetch_assoc($aluno)); mysql_free_result($aluno); ?> </select> <img src="imagens/required.gif" width="10" height="8"></td> </tr> <tr> <td><font size="2" face="Arial, Helvetica, sans-serif"><b>Disciplina..::</b></font></td> <td><select name="cod_disciplina" id="select"> <option value="0">OPÇÕES</option> <?php do { ?> <option value="<?php echo $menu2['cod_disciplina']?>"><?php echo $menu2['nome']?></option> <?php } while ($menu2 = mysql_fetch_assoc($disciplina)); mysql_free_result($disciplina); ?> </select> <img src="imagens/required.gif" width="10" height="8"></td> </tr> <tr> <td><font size="2" face="Arial, Helvetica, sans-serif"><b>Quantidade..::</b></font></td> <td><input name="quantidade" type="text" id="quantidade" size="10" maxlength="10"> <img src="imagens/required.gif" width="10" height="8"></td> </tr> <tr> <td><font size="2" face="Arial, Helvetica, sans-serif"><b>Lançamento..::</b></font></td> <td> <input name="lancamento" type="text" size="15" maxlength="10" onKeyPress="return Formatar_Campo(document.freq,'lancamento','99/99/9999',event)"> <font color="#FF0000"><b>dd/mm/aaaa <img src="imagens/required.gif" width="10" height="8"></b></font></td> </tr> <tr> <td><font size="2" face="Arial, Helvetica, sans-serif"><b>Responsável..::</b></font></td> <td><input name="responsavel" type="text" id="responsavel" size="10" value =" <? echo "$login";?>" maxlength="10"> <img src="imagens/required.gif" width="10" height="8"></td> </tr> <tr> <td> </td> <td> </td> </tr> <tr> <td colspan="2"><input name="enviar" type="submit" id="enviar2" value=" Enviar "> <input name="limpar" type="reset" id="limpar2" value=" LImpar "> </td> </tr> </table> </form></td> </tr> </table> </body> </html> Esta funcionando, agora só falta melhor o design. Um abraço. Alissong Compartilhar este post Link para o post Compartilhar em outros sites