View Full Version : php mysql data


devil_online
15-08-2004, 16:37
Boas, eu criei um login script e gostava que cada vez que me logasse o script fosse buscar dados do user e os dispusesse na pagina? como posso fazer isso? obg

QuickFire
15-08-2004, 16:51
tens de fazer algo do genero SELECT * from TABLE WHERE nick = '$login' não me lembro bem mas se seguires isso podes depois aperfeiçoar ;)

StormhawK
15-08-2004, 17:21
Exacto. Fazes um SELECT aos dados do user e espetas com eles numa variável, assim ficam disponíveis para os consultares ou mostrares.

Exemplo:
nome da tabela de users -> users
id do user -> 69

// obter dados
$dados = mysql_fetch_array(mysql_query("select * from users where id=69;"));

// mostrar dados
echo "Dados de utilizador: <br >";
echo "Nome: ".$dados['nome']." <br >";
echo "E-mail: ".$dados['email']." <br >";

etc.

devil_online
15-08-2004, 17:37
obg.

Fazes um SELECT aos dados do user e espetas com eles numa variável

a questão é que ele terá que assumir o user que se logou.

QuickFire
15-08-2004, 18:31
é para isso que la está o WHERE ;) para dizer que tem de ser aquele que fez o login

devil_online
15-08-2004, 20:09
SELECT * from TABLE WHERE nick = '$login'

Acho que o php não reconhece o termo nick. :(

StormhawK
15-08-2004, 21:40
Podes obter os dados de utilizador ao mesmo tempo que validas o user:

// obtém username e password
$user = $_POST['username'];
$pass = $_POST['password'];

// verifica se existe a combinação de username e password fornecida
$rs = mysql_query("select * from users where username='".$user."' and password='".$pass."';");

// se o resultset tiver um número de linhas diferente de zero
// então o login é válido e podemos passar os dados do user
// para o array que vamos usar para os exibir
if (mysql_num_rows($rs))
{
// cria o array de dados
$dados = mysql_fetch_array($rs);
// exibe os dados
echo "Dados de utilizador: <br >";
echo "ID interno: ".$dados['id']." <br >";
echo "Nome: ".$dados['nome']." <br >";
echo "E-mail: ".$dados['email']." <br >";
} else {
// caso contrário, devolve um erro
echo "Login inválido";
}

Se este código for demasiado complicado, sugiro consultar o manual de referência do PHP, disponível para download em várias linguas e formatos em php.net (http://www.php.net)

Espero ter ajudado.

QuickFire
15-08-2004, 23:05
SELECT * from TABLE WHERE nick = '$login'

Acho que o php não reconhece o termo nick. :(
Isso não é php... isso é mysql e o nick é o nome da coluna... o codigo php devia ficar mysql_query("SELECT * from TABLE WHERE nick = '$login'"); ou seja where nick = $login quer dizer que vai selecionar o valor na tabela onde o nick seja igual ao que se pos no login... ;)