Jump to content

php + mysql + login


Lythari

Recommended Posts

boas,

Tou a tentar desenvolver uma pagina de login, ou seja um site que permite ao utilizador registar-se e depois fazer o respectivo login, de momento tenho isto mas da-me um erro

Parse error: syntax error, unexpected $end in C:\wamp\www\por mim\reg_trata.php on line 43

pagina 1

<html>

<head>
<meta http-equiv="Content-Language" content="pt">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Nova pagina 1</title>
</head>

<body>

<form method="POST" action="reg_trata.php">
<!--webbot bot="SaveResults" U-File="fpweb:///_private/form_results.csv" S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->
<p>Nome:<input type="text" name="nome" size="20"></p>
<p>Nick<input type="text" name="nick" size="20"></p>
<p>Pass<input type="text" name="pass" size="20"></p>
<p>Nº Tel<input type="text" name="tel" size="20"></p>
<p>Email<input type="text" name="email" size="20"></p>
<p> </p>
<p><input type="submit" value="Submeter" name="B1"></p>
</form>

</body>

</html>

pagina 2

<!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" />
<title>Untitled Document</title>
</head>

<body>

<?php

/*-------------------------------
Funções de manipulação de BDs MySQL
-------------------------------*/
function DBConn()
{
$dbUser = "root";
$dbPwd = "";
$dbName = "1";
$dbHost = "localhost";
$tabela		=	"base";

if (!($conn = mysql_connect($dbHost,$dbUser,$dbPwd))) return -1;
if (!mysql_select_db($dbName,$conn)) return -2;
return $conn;
}


function DBDisplayTable($tablename, $conn)
{
$query = "INSERT INTO base (nome, nick, pass, tel, email)
VALUES ('$nome','$nick','$pass','$tel','$email')"; //insere os campos na tabela"


?>
</body>
</html>

ja procurei em muitos e muitos sites, tutoriais algumas paginas ja feitas e dá-me sempre algum erro...

Se alguem me puder ajudar agradecia

cumprimentos 

Link to comment
Share on other sites

  • Replies 40
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Tenta para a página 2:

<!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" />
<title>Untitled Document</title>
</head>

<body>

<?php

/*-------------------------------
Funções de manipulação de BDs MySQL
-------------------------------*/
function DBConn()
{
        $dbUser = "root";
        $dbPwd = "";
        $dbName = "1";
        $dbHost = "localhost";
        $tabela         =       "base";
       
        if (!($conn = mysql_connect($dbHost,$dbUser,$dbPwd))) return -1;
        if (!mysql_select_db($dbName,$conn)) return -2;
        return $conn;
}


function DBDisplayTable($tablename, $conn)
{
        $query = "INSERT INTO base (nome, nick, pass, tel, email)
        VALUES ('$nome','$nick','$pass','$tel','$email')"; //insere os campos na tabela"
}       
       
?>
</body>
</html>

O erro estava em que te esqueces-te de fechar a função. 🙂

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Tenta isto e diz se te dá algum erro.

<!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" />
<title>Untitled Document</title>
</head>

<body>

<?php

/*-------------------------------
Funções de manipulação de BDs MySQL
-------------------------------*/
function DBConn()
{
        $dbUser = "root";
        $dbPwd = "";
        $dbName = "1";
        $dbHost = "localhost";
        $tabela         =       "base";
       
        if (!($conn = mysql_connect($dbHost,$dbUser,$dbPwd))) return -1;
        if (!mysql_select_db($dbName,$conn)) return -2;
        return $conn;
}


function DBDisplayTable($tablename, $conn)
{
       $query = "INSERT INTO base (nome, nick, pass, tel, email)
       VALUES ('$nome','$nick','$pass','$tel','$email')"; //insere os campos na tabela"
       echo  mysql_errno($conn).": ".mysql_error($conn);
}      
       
?>
</body>
</html>

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Ok. Então eu explico. As funções servem para organizar o código e para serem reutilizáveis, ou seja, podes ter o código dividido entre ficheiros e depois, chamas as funções num ficheiro principal. Ou então, para em vez de escreveres o mesmo código várias vezes, o que pode ser necessário em qualquer altura, escreves uma função e depois, com apenas uma linha de código, chamas a função. Para chamar a função basta escreveres o nome da função, abres e fechas parênteses, e dentro desses parênteses defines os argumentos, caso existam, da função.

Neste caso, será assim.

DBConn();
DBDisplayTable(); //Os argumentos nesta função são desnecessários.

Ou seja, no final, e com umas pequenas alterações no código, o ficheiro deverá ficar assim.

<!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" />
<title>Untitled Document</title>
</head>

<body>

<?php

/*-------------------------------
Funções de manipulação de BDs MySQL
-------------------------------*/
function DBConn()
{
        $dbUser = "root";
        $dbPwd = "";
        $dbName = "1";
        $dbHost = "localhost";
        $tabela = "base";
       
        if (!($conn = mysql_connect($dbHost,$dbUser,$dbPwd))) return -1;
        if (!mysql_select_db($dbName,$conn)) return -2;
        return $conn;
}


function DBDisplayTable()
{
        $query = 'INSERT INTO base (nome, nick, pass, tel, email)
        VALUES ("'.$_POST["nome"].'","'.$_POST["nick"].'","'.$_POST["pass"].'","'.$_POST["tel"].'","'.$_POST["email"].'")'; //insere os campos na tabela
        mysql_query($query);
}       
DBConn();
DBDisplayTable();       
?>
</body>
</html>

EDIT: Tenta assim.

Para executares a query, tens de chamar a função mysql_query(), que tem como argumentos o nome da variável que guarda o nome da query. 😉

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

boas... ca esta outro duvida...

agora gostava de saber como é que comparo os campos da BD com os do formulário  ?

<?php


function DBConn()
{
$dbUser = "root";
        $dbPwd = "";
        $dbName = "1";
        $dbHost = "localhost";
        $tabela = "base";

if (!($conn = mysql_connect($dbHost,$dbUser,$dbPwd))) return -1;
if (!mysql_select_db($dbName,$conn)) return -2;
return $conn;
}

function DBDisplayTable($tablename, $conn)
{
$query = "select * from .$tabela ";

}
DBConn();
DBDisplayTable(); 
?>

cumprimentos

Link to comment
Share on other sites

Boas, para saber o que foi escrito no formulario tenho de fazer o método post

"'.$_POST["nick"].'"

? ou serve assim como tenho?

<?php


function DBConn()
{
$dbUser = "root";
        $dbPwd = "";
        $dbName = "1";
        $dbHost = "localhost";
        $tabela = "base";

if (!($conn = mysql_connect($dbHost,$dbUser,$dbPwd))) return -1;
if (!mysql_select_db($dbName,$conn)) return -2;
return $conn;
}

function DBDisplayTable($tablename, $conn)
{

$query = "SELECT id FROM '.$tabela.' WHERE nick = "'.$nick.'" and pass = "'.$pass.'"";


}
DBConn();
DBDisplayTable(); 

?>
Link to comment
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.