Jump to content
c.orelhas

[Resolvido] Ligação BD

Recommended Posts

c.orelhas

Bom dia,

Aconteceu-me aqui um pequeno/grande problema.. Tenho um projeto feito para apresentar na universidade e no dia que fui apresentar o trabalho num computador da escola ao colocar a base de dados e tentar fazer a apresentação do projeto não chama a base de dados e acontece o seguinte:

loginha.jpg

Aqui o ficheiro conn.php que é o responsável por fazer estabelecer ligação à base de dados.

<?
$ligacao=mysql_connect("localhost","root","root")

or die("Ligação à Base de Dados falhada!");

mysql_select_db("loja_merceria",$ligacao);
?>

E de seguida o meu login_sucess.php que faz a ligação do utilizador à base de dados.

<?
session_start();
?>
<html>
<body background="./images/fundo.jpg">
<center><form action='' method='POST'>
Email:<input type='email' name='email'/><br>
Password:<input type='password' name='pass'/><br>
<input type='submit' name='entrar' value='Login'/>
<button type="button" onclick="location.href='index.php'">Voltar</button>
</form></center>
<?
if(isset($_POST['sair'])){
session_destroy();
echo "<meta http-equiv='refresh' content='0;URL=index.php'>";
}
if(isset($_POST['entrar'])){
ob_start();
include("conn.php");
$mail=$_POST['email'];
$pass=$_POST['pass'];
$sql="Select * from utilizador where email='$email' and pass='$pass'";
$resultado=mysql_query($sql,$ligacao);
if($resultado==true){
$registo=mysql_fetch_array($resultado);
$email=$registo['email'];
$nome=$registo['nome'];
$apelido=$registo['apelido'];
$tipo=$registo['tipo_user'];
$estado=$registo['estado_user'];
if(($tipo=="C") && ($estado=="A") && ($_SESSION["nome"]=="")){
session_start();
$_SESSION["nome"]="Olá, ".$nome." ".$apelido;
$_SESSION["mail"]=$email;
echo "<meta http-equiv='refresh' content='0;URL=prod.php'>";
}elseif(($tipo=="A") && ($_SESSION["nome"]=="")){
session_start();
$_SESSION["nome"]="Olá, ".$nome." ".$apelido;
$_SESSION["mail"]="A";
echo "<meta http-equiv='refresh' content='0;URL=admin.php'>";
}
elseif($estado=="I"){
echo "<script>alert('A sua conta ainda não foi ativada, espere que um Administrador aceite.')</script>";
}
else echo "<script>alert('Email ou Password Errados!!!')</script>";
}
}
?>
</body>
</html>

Edited by Rui Carlos
Formatação do código.

Share this post


Link to post
Share on other sites
HappyHippyHippo

altera o tag de abertura do script PHP de "<?" para "<?php"


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
c.orelhas

Sendo assim, devo de substituir todas as minhas tags "<?" para "<?php" nos meus ficheiros todos certo ?

Share this post


Link to post
Share on other sites
HappyHippyHippo

Sendo assim, devo de substituir todas as minhas tags "<?" para "<?php" nos meus ficheiros todos certo ?

não foi isso que eu escrevi ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
c.orelhas

Mesmo após ter feito essas alterações, continuo sem conseguir efetuar o login/registar e tão pouco me carrega os produtos para a página de visitante, alguma sugestão ?

Share this post


Link to post
Share on other sites
c.orelhas

Após inserir os dados tanto de login como ao registar um novo utilizador ele submete mas não coloca os dados na base de dados nem apanha os dados para efetuar o login.

No caso do registo, preencho os campos todos e quando clico em registar ele faz como se tivesse registado o utilizador e diz que foi registado e que fica a aguardar aceitação por parte do administrador, no entanto não vai nada para a base de dados.

No login, preencho o nome e a password e clico em OK e ele é como se voltasse a chamar a página do login..

Share this post


Link to post
Share on other sites
HappyHippyHippo

1º - a chamada da função session_start deverá ser feita só uma única vez e logo no início do script

2º - verifica se a ligação foi correctamente efectuada assim como as queries realizadas através da função mysql_error


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
c.orelhas

<?php
$ligacao = mysql_connect("localhost", "root", "root")
or die ("Ligação à Basa de Dados falhada!");

$db_selected = mysql_select_db('loja_mercearia', $ligacao);
if (!$db_selected) {
die ('Impossível de selecionar: ' . mysql_error());
}
?>

Substitui a minha antiga ligação à base de dados por essa e funcionou, agora falta-me somente arranjar outros erros que tenho na aplicação mas já é secundário.

Obrigado pela ajuda.

Edited by brunoais
geshi

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

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.