Lythari Posted August 20, 2009 at 06:07 PM Report #283965 Posted August 20, 2009 at 06:07 PM 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
scorch Posted August 20, 2009 at 08:47 PM Report #283980 Posted August 20, 2009 at 08:47 PM 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.
Lythari Posted August 24, 2009 at 01:46 AM Author Report #284307 Posted August 24, 2009 at 01:46 AM nao insere nada, faço submit mas nao insere na bd :S
scorch Posted August 24, 2009 at 10:01 AM Report #284320 Posted August 24, 2009 at 10:01 AM 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.
Lythari Posted August 24, 2009 at 11:19 AM Author Report #284323 Posted August 24, 2009 at 11:19 AM eu faço submit, e abre a 2ª pagina em branco, vou a BD e nada...
scorch Posted August 24, 2009 at 12:41 PM Report #284330 Posted August 24, 2009 at 12:41 PM Tu chamas as funções? PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.
Lythari Posted August 24, 2009 at 05:46 PM Author Report #284355 Posted August 24, 2009 at 05:46 PM eu nao percebo muito, mas tem ai todo o codigo que ja fiz... :S
scorch Posted August 24, 2009 at 08:28 PM Report #284375 Posted August 24, 2009 at 08:28 PM 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.
Lythari Posted August 25, 2009 at 10:28 PM Author Report #284555 Posted August 25, 2009 at 10:28 PM nem assim dá... algum não ta bem fogo
edsousa Posted August 25, 2009 at 10:41 PM Report #284558 Posted August 25, 2009 at 10:41 PM Alguém já mencionou que não chamas as funções que tu mesmo definiste. A página 2 (suponho que seja essa a reg_trata.php) tem que chamar as funções DBConn() e DBDisplayTable() [claro que é a seguir à declaração delas], caso contrário elas nunca serão chamadas e nada acontece. Tharis Fan ClubMay Tharis bless you
scorch Posted August 26, 2009 at 09:32 AM Report #284588 Posted August 26, 2009 at 09:32 AM edsousa, eu já editei o meu post anterior e chamei lá as funções. 😉 PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.
Lythari Posted August 26, 2009 at 09:56 PM Author Report #284673 Posted August 26, 2009 at 09:56 PM pois era por isso então... Assim ja deu para inserir... Agora vou tentar fazer o login... se tiver mais alguma questão posto aqui e espero a vossa ajuda... Muito obrigado CUmprimentos
Lythari Posted August 27, 2009 at 01:12 PM Author Report #284733 Posted August 27, 2009 at 01:12 PM 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
scorch Posted August 27, 2009 at 01:26 PM Report #284734 Posted August 27, 2009 at 01:26 PM Usas o Where no sql. 👍 http://www.w3schools.com/SQl/sql_where.asp PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.
Lythari Posted August 28, 2009 at 05:32 PM Author Report #284946 Posted August 28, 2009 at 05:32 PM no sql?? mesmo na BD? ?
scorch Posted August 28, 2009 at 08:12 PM Report #284964 Posted August 28, 2009 at 08:12 PM Na BD não, no Select. Por exemplo: $query = 'SELECT ID_USER FROM '.$tabela.' WHERE username = "'.$username.'" and password = "'.$password.'"'; PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.
Lythari Posted August 29, 2009 at 01:04 PM Author Report #285012 Posted August 29, 2009 at 01:04 PM ao fazer isso depois para saber se existe ou não, tenho de fazer um count não?
scorch Posted August 29, 2009 at 08:10 PM Report #285038 Posted August 29, 2009 at 08:10 PM Sim, mysql_num_rows($query); 👍 PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.
Lythari Posted August 29, 2009 at 11:23 PM Author Report #285053 Posted August 29, 2009 at 11:23 PM 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(); ?>
scorch Posted August 30, 2009 at 08:03 PM Report #285090 Posted August 30, 2009 at 08:03 PM Sim, tens de usar o array Post. 👍 PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now