Jump to content

vinihhylian0103

Members
  • Content count

    5
  • Joined

  • Last visited

Everything posted by vinihhylian0103

  1. vinihhylian0103

    Facebook Login

    Estou com um problema lógico que não consigo resolver, quando e faço login com o facebook com um usuário que não tem o email cadastrado ele retorna a mensagem "usuário não cadastrado", ao invés disso eu gostaria de poder cadastrar o email desse usuário não cadastrado, alguém pode me ajudar? facebook.php <?php session_start(); unset($_SESSION['face_access_token']); require_once'lib\Facebook\autoload.php'; if(!$conect=mysqli_connect('localhost','root','','cadastros')) die ('erro ao conectar'); $fb = new \Facebook\Facebook([ 'app_id' => '2259759927393128', 'app_secret' => '8896a104c69194287cc879854a9d8671', 'default_graph_version' => 'v2.10', //'default_access_token' => '{access-token}', // optional ]); $helper = $fb->getRedirectLoginHelper(); //var_dump($helper); $permissions = ['email']; // Optional permissions try { if (isset($_SESSION['face_access_token'])) { $accessToken = $_SESSION['face_access_token']; } else{ $accessToken = $helper->getAccessToken(); } } catch(Facebook\Exceptions\FacebookResponseException $e) { // When Graph returns an error echo 'Graph returned an error: ' . $e->getMessage(); exit; } catch(Facebook\Exceptions\FacebookSDKException $e) { // When validation fails or other local issues echo 'Facebook SDK returned an error: ' . $e->getMessage(); exit; } if (! isset($accessToken)) { $url_Login = 'http://localhost/Site(TCC)/facebook.php'; $loginUrl = $helper->getLoginUrl($url_Login, $permissions); } else { $url_Login = 'http://localhost/Site(TCC)/facebook.php'; $loginUrl = $helper->getLoginUrl($url_Login, $permissions); if (isset($_SESSION['face_access_token'])) { $fb->setDefaultAccessToken($_SESSION['face_access_token']); } else { $_SESSION['face_access_token'] = (string) $accessToken; $oAuth2Client = $fb->getOAuth2Client(); $_SESSION['face_access_token'] = $oAuth2Client->getLongLivedAccessToken($_SESSION['face_access_token']); $fb->setDefaultAccessToken($_SESSION['face_access_token']); } try { // Returns a `Facebook\FacebookResponse` object $response = $fb->get('/me?fields=name, email'); $user = $response->getGraphUser(); //var_dump($user); $sql = "SELECT * FROM usuarios WHERE email='".$user['email']."' LIMIT 1"; # Executa a instrução SQL no banco de dados $resultado = @mysqli_query($conect, $sql); # Verifica o numero de linhas retornadas $linhas = mysqli_num_rows($resultado); # Direciona o usuário ao menu de opções if($linhas==0) { "INSERT INTO usuarios(nome, rm, id_curso, email, senha) VALUES('$user','$user','$user','.$user['email']','$user')")); function myAlert($msg, $url){ echo '<script language="javascript">alert("'.$msg.'");</script>'; echo "<script>document.location = '$url'</script>"; } myAlert("Email ou Senha incorretos! Verifique os dados inseridos!", "/SITE(TCC)/CADASTRO/index.html"); } else{ $_SESSION["autenticado"]="rfc822_allowed"; $_SESSION["login"]=$email; header("Location:/SITE(TCC)/LOGIN/profile.php"); } } catch(Facebook\Exceptions\FacebookResponseException $e) { echo 'Graph returned an error: ' . $e->getMessage(); exit; } catch(Facebook\Exceptions\FacebookSDKException $e) { echo 'Facebook SDK returned an error: ' . $e->getMessage(); exit; } } ?> <a href="<?php echo $loginUrl; ?>">Facebook</a>
  2. Gostaria de fazer uma área do usuário que recolha os dados dele do banco de dados. form action -> login.php <meta charset="utf-8"> <?php session_start(); if(!$conect=mysqli_connect('localhost','root','','cadastros')) die ('erro ao conectar'); if (!empty($_POST) AND (empty($_POST['email']) OR empty($_POST['senha']))) { header("Location: index.html"); exit; } $email = $_POST['email']; $senha = $_POST['senha']; $sql = "SELECT * FROM usuarios WHERE email ='$email' AND senha = md5('$senha')"; $resultado = @mysqli_query($conect, $sql); $linhas = mysqli_num_rows($resultado); if($linhas==0) { function myAlert($msg, $url){ echo '<script language="javascript">alert("'.$msg.'");</script>'; echo "<script>document.location = '$url'</script>"; } myAlert("Email ou Senha incorretos! Verifique os dados inseridos!", "/teste_cad/Login/index.html"); } else{ $_SESSION["autenticado"]="rfc822_allowed"; $_SESSION["login"]=$email; header("Location: profile.php");} ?>
  3. vinihhylian0103

    Gravar Dados de um Campo Select no Banco de Dados!

    Boa noite, eu tenho um campo no meu cadastro para o usuário selecionar seu curso, que seria esse: <select name="curso" type="text" required=".$this->fields["cursos"]."> <option value="Informática">Informática</option> <option value="ADM">Administração</option> <option value="Edificações">Edificações</option> /> e eu gostaria de saber como gravar essa escolha no banco de dados, segue o código de inserrir <?php if(!$conect=mysqli_connect('localhost','root','','cadastros')) die ('erro ao conectar'); #Recolhendo os dados do formulário $nome=mysqli_real_escape_string($conect, $_POST['nome']); $sobrenome=mysqli_real_escape_string($conect, $_POST['sobrenome']); $data=mysqli_real_escape_string($conect, $_POST['data_nasc']); $rm=mysqli_real_escape_string($conect, $_POST['rm']); $curso=mysqli_real_escape_string($conect, $_POST['curso']); $email=mysqli_real_escape_string($conect, $_POST['email']); $senha=mysqli_real_escape_string($conect, $_POST['senha']); # Verificando apenas um campo, no caso dado1. $sql = $conect->query("SELECT * FROM usuarios WHERE email='$email'"); if(mysqli_num_rows($sql) > 0){ echo "Este email já foi cadastrado!"; exit(); } else { if(!$conect->query("INSERT INTO usuarios(nome, sobrenome, data_nasc, rm, curso, email, senha) VALUES('$nome','$sobrenome','$data','$rm','$curso','$email','$senha')")) die ('Os dados não foram inseridos'); echo "<script type='text/javascript'>alert('Cadastro Concluído!');</script>"; header('Location: index.html'); } Muito obrigado desde já!
  4. vinihhylian0103

    Gravar Dados de um Campo Select no Banco de Dados!

    Muito obrigado!
  5. vinihhylian0103

    Não duplicar registros com PHP

    Boa noite, gostaria de saber tem alguma maneira de prevenir a inclusão de registros do mesmo valor na minha tabela. O código é o seguinte: <?php include_once('conexao.php'); $nome=$_POST['nome']; $sobrenome=$_POST['sobrenome']; $data=$_POST['data_nasc']; $rm=$_POST['rm']; $curso=$_POST['curso']; $email=$_POST['email']; $senha=$_POST['senha']; $sqlinsert = "insert into usuarios(nome, sobrenome, data_nasc, rm, curso, email, senha) values('$nome','$sobrenome','$data','$rm','$curso','$email','$senha')"; $resultado = @mysqli_query($conexao,$sqlinsert); if(!$resultado) { die('Query inválida: '. @mysqli_error($conexao)); } else { echo "<script type='text/javascript'>alert('Cadastro Concluído!');</script>"; header('Location: index.html'); } mysqli_close($conexao); ?>
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.