aladiah 1 Denunciar post Postado Agosto 28, 2010 Olá pessoal, estou com um pequeno problema em meu código. Procurei uma solução dentro do forum e no site mas não encontrei por isso vou postar aqui. config.php <?php $hostname_localhost = "localhost"; $database_localhost = "browser_game"; $tabela = "tbl_usuarios"; $username_localhost = "root"; $password_localhost = ""; //$localhost = mysql_pconnect($hostname_localhost, $username_localhost, $password_localhost) or trigger_error(mysql_error(),E_USER_ERROR); function conexao(){ global $base; $base = mysql_connect("localhost","root","") or die (mysql_error()); $db = mysql_select_db("browser_game",$base) or die (mysql_error()); } function desconectar(){ mysql_close($base); } ?> enviar_cadastro.php <?php include("config.php");//buscando as configurações de conexão com o banco de dados //pega os dados inseridos no formulário de cadastro $nome = $_POST['nome']; $login = $_POST['login']; $senha = $_POST['senha']; $senha2 = $_POST['senha2']; $email = $_POST['email']; //defenindo a váriavel de erro $erro=0; //Fazendo a conexão com o banco de dados conexao(); //verificando se o email ja foi cadastrado no banco de dados $query_email=mysql_query("SELECT * FROM $tabela WHERE email='$email'"); //retorna o resultado da QUERY $contagem=mysql_num_rows($query_email); if($contagem!=0){ echo '<center><font color="#FF0000">E-mail já cadastro em nosso banco de dados!</font>'; $erro++; } //verificando se o email tem @ if( !eregi("@", $email) ){ echo '<center><font color="#FF0000">E-mail incorreto!</font>'; $erro++; } //verifica se o login ja está cadastrado no banco de dados $query_login=mysql_query("SELECT * FROM $tabela WHERE login='$login'"); //retorna o resultado da QUERY $contagem_login=mysql_num_rows($query_login); if($contagem_login!=0){ echo '<center><font color="#FF0000">Login já cadastrado em nosso banco de dados!</font>'; $erro++; } //verificando se as duas senhas inseridas conferem if ($senha <> $senha2) { echo '<center><font color="#FF0000">As duas senhas inseridas não conferem!</font>'; $erro++; } //verificando se o nome contém números e simbolos if( ereg("[0-9()-.,:;*&¬!?|+}{/]", $nome) ){ echo '<center><font color="#FF0000">Nome incorreto!</font>'; $erro++; } //verificando se o nome foi inserido if(empty($nome)){ echo '<center><font color="#FF0000">Campo nome em branco!</font>'; $erro++; } //se nenhum erro for encontrado, o algoritimo prossegue naturalmente. if($erro==0){ //Inserindo dados no db $insert = mysql_query("INSERT INTO '$tabela' (id,nome,login,senha,email) VALUES (NULL,'$nome','$login','$senha','$email')"); // or die("Error: ". mysql_error(). " with query ". $i); echo '<center>'.$insert.'<br> <center>Cadastro efetuado com sucesso!<br><br> <b>Nome:</b> '.$nome.'<br> <b>Login:</b> '.$login.'<br> <b>Email:</b> '.$email.''; } ?> <html><head><title>Teste</title></head> <body></body></html> as primeiras consultas funcionam normalmente, ele verifica se o e-mail ja foi cadastrado antes e se o login ja foi cadastrado, mas na hora de inserir os dados, ele passa como se tivesse inserido normalmente os dados, mas o banco de dados fica intacto. Alguém pode me ajudar a identificar o erro? Compartilhar este post Link para o post Compartilhar em outros sites
aladiah 1 Denunciar post Postado Agosto 28, 2010 Ae pessoal, mesmo que ninguém tenha respondido, algumas pessoas olharam e devem estar tentando achar o erro, então agradeço muito por isso. Eu acebei encontrando o erro. Como vocês devem ter visto no arquivo config.php o nome da minha tabela é "tbm_usuarios" pelo fato de usar um _ , o uso das aspas simples acaba sendo inapropriado para o código, então fiz o uso de apóstrofos, agora sim o o MySql consegue enteder a inserção de dados, então o código ficou assim. //Inserindo dados no db $insert = mysql_query("INSERT INTO `$tabela` (id,nome,login,senha,email) VALUES (NULL,'$nome','$login','$senha','$email')"); // or die("Error: ". mysql_error(). " with query ". $i); obrigado a todos. Compartilhar este post Link para o post Compartilhar em outros sites