Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal do iMasters, recentemente comessei um projeto de um site,
nesse site o usuario se cadastra, loga e no seu painel tem suas informações como:
Nome, login, email, id, tudo isso eu fiz com session, por ai tudo bem, mas qual o problema?
tenho uma página de perfil ( profile.php ) não há muito conteudo por que eu não sei fazer uma coisa,
eu gostaria que ao usuario tentar entrar na página: profile.php?id=1 imprimisse as informações somente
do usuario de id 1 e assim sucessivamente profile.php?id=2 somente infos do id 2. Como isso é possivel?
Não vai adianta eu posta o código da página profile.php por que não há nada nela, pois ainda n sei como fazer.
Vlw pessoal espero respostas, e explicações;
:thumbsup:
Uai, você consegue fazer um login, e não consegue uma consulta com get? A lógica é a mesma.
$id = (int)$_GET['id'];
$sql_query = mysql_query("SELECT * FROM `tabela` WHERE `id` = '".$id."'");
// Já que vai pegar só um usuário, não precisa de loop, e então, é só exibir os dadosColoquei o código mais como vai mostrar as informações?
Nunca consigo isso, só consigo mostra do usuario logado, sem ta logado com session não consigo nada!
Você está recuperando o id via get?
Primeiro:
quais são os campos de sua tabela?
da tabela users
--
Na tabela users eu tenho esses campos:
id int(150) NOT NULL AUTO_INCREMENT,
nome varchar(150) NOT NULL,
email varchar(150) NOT NULL,
login varchar(150) NOT NULL,
senha varchar(150) NOT NULL,
PRIMARY KEY (id),
UNIQUE KEY login (login)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;
>id int(150) NOT NULL AUTO_INCREMENT,
O seu site é ultra-mega-gigante hein? 150 lenght?
Olha só o tamanho que teria que ser, um tamanho de 150 caracteres:
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
Mas esquece isso, vamos ao que lhe interessa:
listagem.php
$sql_query = mysql_query("SELECT * FROM `tabela` ORDER BY `id` DESC");
$result = mysql_fetch_array($sql_query);
echo "<a href='profile.php?id=".$result->nome."'>".$result->nome."<a/><br />";
echo $result->email."<br />";
echo $result->login."<br />";
echo $result->senha."<br />";
profile.php
$id = (int)$_GET['id'];
$sql_query = mysql_query("SELECT * FROM `tabela` WHERE `id` = '".$id."'");
$result = mysql_fetch_array($sql_query);
echo $result->nome."<br />";
echo $result->email."<br />";
echo $result->login."<br />";
echo $result->senha."<br />";Segue:
// não esqueça de colocar a conexão aqui
$id = $_GET['id'];
$sql = "SELECT * FROM users WHERE id = $id";
$query = mysql_query($sql);
$linha = mysql_num_rows($query);
if($linha != 0) {
$row = mysql_fetch_object($query);
echo $row->nome. "<br>";
echo $row->email. "<br>";
echo $row->login. "<br>";
}
Taí um teste bem simples.
At+
vlw Quelipe seu codigo para o profile pegou certin,
adcionei a conexão e ficou perfeito!
Quando for fazer a consulta na tabela que contém o perfil do usuário coloca a condição id = id_recebido.
Exemplo:
At+