• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

GpL

erro no backoffice

13 mensagens neste tópico

Eu estou a elaborar uma pagina para uma junta de freguesia, que é a minha PAP e tenho de entregar segunda.

Mas deparei me com um erro quando elaborei o backoffice,que ainda não consegui resolver.

http://img502.imageshack.us/my.php?image=errowa0.jpg

aqui fica o codigo do index, onde dá o erro:

<?

session_start();

session_destroy();

$message="";

$Login=$_POST['Login'];
if($Login){
$username=$_POST['username'];
$password=$_POST['password'];
$md5_password=md5($_POST['password']); // encriptar password em "function md5". 


$host="localhost"; // nome do host.
$db_user="root"; //  username mysql.
$db_password=""; // password mysql.
$database="maximinos"; // nome da base de dados.
mysql_connect($host,$db_user,$db_password);
mysql_select_db($database);

// verificar username e password.
$result=mysql_query("select * from admin where username='$username' and password='$md5_password'");
if(mysql_num_rows($result)!='0'){ 
session_register("username"); // criar sessão username.
header("location:main.php"); // Redirecciona para main.php
exit;
}else{ 
$message="Username ou Password Incorrectos";
}

} // fim da verificação de login.
?>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login - Junta de Freguesia de Maximinos</title>
<link href="stylelogin.css" rel="stylesheet" type="text/css">
</head>

<body>

<div id="logingeral">
<div id="titulologin">Backoffice</div>
<div id="form">
<div id="smserro"> <? echo $message; ?> </div>
<div id="fromcampos">
<form id="form1" name="form1" method="post" action="<? echo $PHP_SELF; ?>">
User : 
    <input name="username" type="text" id="username" style="background-color:e6f6ff; border: 1px solid #93cced; font-size:8pt; color: #000000" maxlength="15"/><br><br>
Password :
    <input name="password" type="password" id="password" style="background-color:e6f6ff; border: 1px solid #93cced; font-size:8pt; color: #000000" maxlength="10"/><br><br>
    <input name="Login" type="submit" class="submitfrom" id="Login" value="Login" />
</form>
</div>
</div>
</div>
<div id="rodape">Luis Macedo 2007</div>
</body>
</html>

se alguem souber o problema,agradeço que me diga a solução o mais rapido possivel.

Cumprimentos,

Luis Macedo.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já resolvi esse erro,o que parece é que ao editar o ficheiro com o notepad, criava algum caracter lá no meio do ficheiro que causava esses erros.. editei o ficheiro com o dreamweaver e já não dá esses 2 erros.

Agora estou com outro problema.

Tenho a base de dados criada,tudo direito e ele diz me que a password ou o user estão errados,quando tento fazer login no backoffice..e fui eu que criei a própria base de dados e o registo..

<?

session_start();

session_destroy();

$message="";

$Login=$_POST['Login'];
if($Login){
$username=$_POST['username'];
$md5_password=md5($_POST['password']);
$database="maximinos";
mysql_connect("localhost","luis","12345");
mysql_select_db($database);

$result=mysql_query("select * from admin where user='$username' and password='$md5_password'");
if(mysql_num_rows($result)!='0'){ 
session_register("username");
header("location:main.php");
exit;
}else{ 
$message="Username ou Password Incorrectos";
}

}
?>

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ao criar o campo da pass md5 deste espaço suficiente para ser armazenada a hash gerada pelo md5? Pode ser disso, ou então ao inserires a tua pass pelo phpmyadmin esqueces-te de usar a função md5 para a enncriptar. São coisas que já me aconteceram. :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

usei a funcao md5.. isso do espaço é que já tenho duvidas,pus varchar 20.. vou alterar e testar.

era mesmo esse o problema  :-[

:biggrin:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

usei a funcao md5.. isso do espaço é que já tenho duvidas,pus varchar 20.. vou alterar e testar.

era mesmo esse o problema  :-[

:biggrin:

Eheh..Não há anda como dar com a cabeça na parede por uma coisa tão estúpida. :D Quando fui eu também andei às voltas e só em lembrei de aumentar o espaço muito depois...  :biggrin:

A hash que vai gerar vai ser sempre superior a esse tamanho, se compararmos a hash cortada claro que não dá certo. lol

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ya.. tens razao..

agora andam outras duas coisas a dar me a volta a' cabeça.. as unicas coisas que não tao a funcionar no backoffice sao o alterar e o apagar.. o adicionar funciona.. :S

tenho q entregar isto segunda.. ainda me falta fazer o relatorio,arranjar mais algumas coisas na pagina,etc ..

alguem q perceba muito de php e puder ajudar a resolver estes erros, adicione luis_bracara@hotmail.com sff  :$

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

mais uma duvida. eu tenho um formulario, e queria que esses dados ficassem gravados numa tabela da base de dados,quando o utilizador carregasse em "enviar" ..

penso que isso é facil, mas tou agora a ter uma branca :$ alguem me dá uma ajuda ?

edit: fiz o formulario, e no botao enviar chamo o ficheiro enviar.php q tem este script q eu criei..

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Junta de Freguesia de Maximinos</title>
<body>
<?php
mysql_connect("localhost","luis","12345");
mysql_select_db("maximinos");
$nome=$_POST[nome];
$morada=$_POST[morada];
$mail=$_POST[email];
$bi=$_POST[bi];
$tlmv=$_POST[tel];
$comentarios=$_POST[texto];
$sql="insert into contactos (nome,morada,email,bi,telemovel,comentarios) values ('$nome','$morada','$mail','$bi','$tlmv,'$comentarios')";
mysql_db_query("maximinos",$sql);
$num_ad=mysql_affected_rows();
if ($num_ad > 0){
	print("<br>Dados inseridos com sucesso.");
} else {
	print("Erro.");
}
mysql_close();
?>	  

</body>
</html>

mas esta a dar erro ..

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

sim.. isso já tinha modificado.. mas continua sem inserir nada na base de dados, só me dá aquela mensagem "Erro." ..

edit: ja funca.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

tens que analizar se os campos tao preencidos, tipo fazes uma funçao que ao carregar no botao, enviar ou assim antes de guardar chame essa funçao e dpse que guarda.. o que essa funçao vai fazer e ver se o o campo texto ou qualquer outro que alguma coisa...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

deve de ser qualquer coisa como assim


<?php

if ($nome == "" ){ echo 'preeche o campo nome';}
if ($morada == "") { echo 'preeche o campo nome';}

?>

deve ser mais ou menos assim, agora n tou em casa, mas em principio deve de ser assim...

e so fazeres para todos.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Correcção, é $nome == "" e não =. :thumbsup:

Aconselho o uso de empty($nome) em vez de $nome == "", porque se eu introduzir um espaço, a variável não é "" mas continua a estar vazia.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora