Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

XIM

mostrar foto e nome de quem visitou meu perfil em php

Recommended Posts

boa tarde!!!!,gostaria da ajuda de vcs ou me indicar  algo em que possas esta estudando ,para ve como fazer com que mostre no perfil dos usuários, quem  lhe visitou com foto e nome,pesquisei e ñ encontrei nada sobre,ou devo esta fazendo a pesquisa errada,ñ sei nem como começar,quem puder me ajudar ficarei agradecido,que todos tenha uma ótima noite e um excelente final de semana.

Compartilhar este post


Link para o post
Compartilhar em outros sites

quando alguem acessar a pagina tal dentro dessa pagina vai ter insert into na onde vai inserir imagem do usuario, nome usuario, data com id da pessoa que ele acessou, quando essa tal pessoa acessa view pega os view com id dela na onde vai mostrar só essas pessoas que acessou id dela

 

 

você nao quer que toda hora fique dando insert faz upload só na data que a pessoa acessou

 

se pessoa já tem um insert into então else faz upload na data

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 minutos atrás, Emerson.Oliveira disse:

quando alguem acessar a pagina tal dentro dessa pagina vai ter insert into na onde vai inserir imagem do usuario, nome usuario, com id da pessoa que ele acessou, quando essa tal pessoa acessa view pega os view com id dela na onde vai mostrar só essas pessoas que acessou id dela

na pagina do usuario que cliko para ve os dados dele ta assim : 

 

<?php
$id=$_GET["id"];
error_reporting (E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);
$conexao=mysql_connect("localhost","root","");
mysql_select_db("amadochat");
$sql="SELECT * FROM usuarios where id='$id'";
$resultado=mysql_query($sql);
$pegar=mysql_fetch_array($resultado);

?>

<?php do { ?>
<?php require_once('../Config/config_sistema.php'); ?>
<?php
mysql_select_db($banco_de_dados);
$query_Recordset1 = "SELECT * FROM usuarios WHERE id = " . $_GET['id'];
$Recordset1 = mysql_query($query_Recordset1) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
echo $pegar['login']." : ";
echo $pegar['descricao']."<br>";


?>

 

como devo proceder?

Compartilhar este post


Link para o post
Compartilhar em outros sites
5 minutos atrás, XIM disse:

na pagina do usuario que cliko para ve os dados dele ta assim : 

 

<?php
$id=$_GET["id"];
error_reporting (E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);
$conexao=mysql_connect("localhost","root","");
mysql_select_db("amadochat");
$sql="SELECT * FROM usuarios where id='$id'";
$resultado=mysql_query($sql);
$pegar=mysql_fetch_array($resultado);

?>

<?php do { ?>
<?php require_once('../Config/config_sistema.php'); ?>
<?php
mysql_select_db($banco_de_dados);
$query_Recordset1 = "SELECT * FROM usuarios WHERE id = " . $_GET['id'];
$Recordset1 = mysql_query($query_Recordset1) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
echo $pegar['login']." : ";
echo $pegar['descricao']."<br>";


?>

 

como devo proceder?

agora você faz insert into vai criar uma tabela para isso tabela views por exemplo insert into views insere meu avatar, meu id, e get id usuario, pronto você você faz mysql_fetch_assoc para aparecer essas pessoas 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 30/09/2017 at 18:08, Emerson.Oliveira disse:

agora você faz insert into vai criar uma tabela para isso tabela views por exemplo insert into views insere meu avatar, meu id, e get id usuario, pronto você você faz mysql_fetch_assoc para aparecer essas pessoas 

ok,vou ve aqui,obrigado pela força

 

Meu amigo eu  tenho esta tabela,tenho que fazer outra é isso e quais dados coloco na outra:

 

CREATE TABLE IF NOT EXISTS `usuarios` (
`id` int(11) NOT NULL auto_increment,  
`foto` varchar(100) NOT NULL,
  `login` varchar(200) NOT NULL,

  `horario` datetime NOT NULL,
  `limite` datetime NOT NULL,
  `blocks` varchar(200) NOT NULL, 
  `dt_ult_acesso` datetime NOT NULL,
   `descricao` text,

PRIMARY KEY (`id`),
  UNIQUE KEY `nome` (`nome`),
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

como faço isso

 

quando alguem acessar a pagina tal dentro dessa pagina vai ter insert into na onde vai inserir imagem do usuario, nome usuario, data com id da pessoa que ele acessou, quando essa tal pessoa acessa view pega os view com id dela na onde vai mostrar só essas pessoas que acessou id 

 

 

ñ estou conseguindo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom se entendi bem, o sistema de visita ficaria basicamente assim:

Você já tem tabela de usuários certo? onde tem o id?

Você criaria somente a tabela visitas onde teria o ID - ID_QM_VISITO - ID_VISITADO - DATA_VISITA

Você faz o insert quando o usuario de terminado id acessar a página de perfil de determinado usuário.

Imaginando que o link do perfil seja, www.seusite.com/perfil.php?id=x($_GET['id']) & id da pessoa logada seja determinada por $_SESSION['id'];

O Insert quando o usuario abrir o perfil de uma pessoa, Seria:

$data = date("d/m/y");
$insert = $pdo->prepare("INSERT INTO visitas(id_qm_visito, id_visitado, data_visita)VALUES(:idq, :idv, :dt)");
$insert->bindValue(":idq", $_SESSION['id'], PDO::PARAM_STR);
$insert->bindValue(":idv", $_GET['id'], PDO::PARAM_STR);
$insert->bindValue(":dt", $data, PDO::PARAM_STR);
$insert->execute();

Onde você queira mostra as visitas você pesquisaria:

$visitas = $pdo->prepare("SELECT * FROM visitas WHERE id_visitado = ?");
$visitas->execute(array($_GET['id']));
while($pega = $visitas->fetch(PDO::FETCH_ASSOC)){
	$id_qm_visito = $pega['id_qm_visito'];
	
	$dadosVisitor = $pdo->prepare("SELECT * FROM usuarios WHERE id = ?");
	$dadosVisitor->execute(array($id_qm_visito));
	
	$dadosUsuario = $dadosVisitor->fetchObject();
	
	echo "O ".$dadosUsuario->nome." visitou seu perfil no dia: ".$pega['data_visita'];
	
}

E mais ou menos isso!! Não bom de explicar, mais esse código todo serve de um exemplo que você pode seguir. Você pode usar $dadosUsuario->foto  para pega a foto do usuário que visitou o perfil assim ele sempre mostra a foto atual da pessoa, se você armazenar na tabela visitas isso não será possível. Espero que entenda. :sweat_smile:

Compartilhar este post


Link para o post
Compartilhar em outros sites
15 horas atrás, Gleyson Abreu disse:

Bom se entendi bem, o sistema de visita ficaria basicamente assim:

Você já tem tabela de usuários certo? onde tem o id?

Você criaria somente a tabela visitas onde teria o ID - ID_QM_VISITO - ID_VISITADO - DATA_VISITA

Você faz o insert quando o usuario de terminado id acessar a página de perfil de determinado usuário.

Imaginando que o link do perfil seja, www.seusite.com/perfil.php?id=x($_GET['id']) & id da pessoa logada seja determinada por $_SESSION['id'];

O Insert quando o usuario abrir o perfil de uma pessoa, Seria:


$data = date("d/m/y");
$insert = $pdo->prepare("INSERT INTO visitas(id_qm_visito, id_visitado, data_visita)VALUES(:idq, :idv, :dt)");
$insert->bindValue(":idq", $_SESSION['id'], PDO::PARAM_STR);
$insert->bindValue(":idv", $_GET['id'], PDO::PARAM_STR);
$insert->bindValue(":dt", $data, PDO::PARAM_STR);
$insert->execute();

Onde você queira mostra as visitas você pesquisaria:


$visitas = $pdo->prepare("SELECT * FROM visitas WHERE id_visitado = ?");
$visitas->execute(array($_GET['id']));
while($pega = $visitas->fetch(PDO::FETCH_ASSOC)){
	$id_qm_visito = $pega['id_qm_visito'];
	
	$dadosVisitor = $pdo->prepare("SELECT * FROM usuarios WHERE id = ?");
	$dadosVisitor->execute(array($id_qm_visito));
	
	$dadosUsuario = $dadosVisitor->fetchObject();
	
	echo "O ".$dadosUsuario->nome." visitou seu perfil no dia: ".$pega['data_visita'];
	
}

E mais ou menos isso!! Não bom de explicar, mais esse código todo serve de um exemplo que você pode seguir. Você pode usar $dadosUsuario->foto  para pega a foto do usuário que visitou o perfil assim ele sempre mostra a foto atual da pessoa, se você armazenar na tabela visitas isso não será possível. Espero que entenda. :sweat_smile:

 

Eureca! Porém, se alguém acessa o perfil 100x por dia, vai exibir todos, para resolver isso e mostrar apenas um registro, utilize:

$visitas = $pdo->prepare("SELECT * FROM visitas WHERE id_visitado = ? GROUP BY $data")

No lugar de:

$visitas = $pdo->prepare("SELECT * FROM visitas WHERE id_visitado = ?")

Assim, irá pegar um registro apenas, e não 100. :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

É só substituir a query de INSERT para UPDATE, assim sendo novo registro não é gravado pelo insert e sim substitui a antigo usando-se update

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 horas atrás, Jesse&Francinete disse:

 

Eureca! Porém, se alguém acessa o perfil 100x por dia, vai exibir todos, para resolver isso e mostrar apenas um registro, utilize:


$visitas = $pdo->prepare("SELECT * FROM visitas WHERE id_visitado = ? GROUP BY $data")

No lugar de:


$visitas = $pdo->prepare("SELECT * FROM visitas WHERE id_visitado = ?")

Assim, irá pegar um registro apenas, e não 100. :D

Ou um update na data.

1 hora atrás, Omar~ disse:

É só substituir a query de INSERT para UPDATE, assim sendo novo registro não é gravado pelo insert e sim substitui a antigo usando-se update

Sim sim ele pode pesquisa se ja existe o usuario cadastro na visitas e alterar apenas a data.

$Verivisitas = $pdo->prepare("SELECT * FROM visitas WHERE id_qm_visito = :idq AND id_visitado = :idv");
$Verivisitas->bindValue(":idq", $_SESSION['id'], PDO::PARAM_STR);
$Verivisitas->bindValue(":idv", $_GET['id'], PDO::PARAM_STR);
$rowVisita = $Verivisitas->rowCount();

if($rowVisita > 0){
	$data = date("d/m/y");
	$up = $pdo->preprare("UPDATE visitas SET data = :dt WHERE id_qm_visito = :idq AND id_visitado = :idv");
	$up->bindValue(":dt", $data, PDO::PARAM_STR);
	$up->bindValue(":idq", $_SESSION['id'], PDO::PARAM_STR);
	$up->bindValue(":idv", $_GET['id'], PDO::PARAM_STR);
	$up->execute();
}else{
	$data = date("d/m/y");
    $insert = $pdo->prepare("INSERT INTO visitas(id_qm_visito, id_visitado, data_visita)VALUES(:idq, :idv, :dt)");
    $insert->bindValue(":idq", $_SESSION['id'], PDO::PARAM_STR);
    $insert->bindValue(":idv", $_GET['id'], PDO::PARAM_STR);
    $insert->bindValue(":dt", $data, PDO::PARAM_STR);
    $insert->execute();
}

Basicamente isso .

Compartilhar este post


Link para o post
Compartilhar em outros sites

o link que uso :

<?php

...

echo"<a target='principal' href='../usuario/detalhes.php?id=$objeto->id'><img src='../precadastro/fotos/$objeto->foto'width='100' height='70' border='0'></a>&nbsp;&nbsp;";
?>

 

e a pagina de detalhes.php assim :

 

<?php
$id=$_GET["id"];
error_reporting (E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);
$conexao=mysql_connect("localhost","root","");
mysql_select_db("amadoamante");
$sql="SELECT * FROM dados_usuarios where id='$id'";
$resultado=mysql_query($sql);
$pegar=mysql_fetch_array($resultado);

?>

<?php do { ?>
<?php require_once('../Config/config_sistema.php'); ?>
<?php
mysql_select_db($banco_de_dados);
$query_Recordset1 = "SELECT * FROM dados_usuarios WHERE id = " . $_GET['id'];
$Recordset1 = mysql_query($query_Recordset1) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
echo $pegar['login']." : ";
echo $pegar['descricao']."<br>";

?>

<?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>

 

 

 

esta dando erro em 

 

$insert = $pdo->prepare("INSERT INTO visitas(ID_qm_visito, ID_visitado, data_visita)VALUES(:idq, :idv, :dt)");

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde!!!!,fiz assim e ñ esta gravando no bd

 

LINK:

<?php

...

echo"<a  href='detalhes.php?ID=$objeto->ID'><img src='fotos/$objeto->foto'></a>";?>

...

?>

 

Perfil de outro usuário :

 

<?php
$ID=$_GET["ID"];
error_reporting (E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);
$conexao=mysql_connect("localhost","root","");
mysql_select_db("amadoamante");
$sql="SELECT * FROM dados_usuarios where ID='$ID'";
$resultado=mysql_query($sql);
$pegar=mysql_fetch_array($resultado);
echo $pegar['ID']."<br>";
echo $pegar['login']." : ";
echo $pegar['descricao']."<br>";
?>

<?php
$con=new PDO('mysql:host=localhost;dbname=amadoamante', 'root', '');
?>

<?php
$Verivisitas = $con->prepare("SELECT * FROM visitas WHERE ID_qm_visito = :idq AND ID_visitado = :idv");
$Verivisitas->bindValue(":idq", $_SESSION['loginID'], PDO::PARAM_STR);
$Verivisitas->bindValue(":idv", $_GET['ID'], PDO::PARAM_STR);
$rowVisita = $Verivisitas->rowCount();

if($rowVisita > 0){
    $data = date("d/m/y");
    $up = $con->preprare("UPDATE visitas SET data = :dt WHERE ID_qm_visito = :idq AND ID_visitado = :idv");
    $up->bindValue(":dt", $data, PDO::PARAM_STR);
    $up->bindValue(":idq", $_SESSION['loginID'], PDO::PARAM_STR);
    $up->bindValue(":idv", $_GET['ID'], PDO::PARAM_STR);
    $up->execute();
}else{
    $data = date("d/m/y");
    $insert = $con->prepare("INSERT INTO visitas(ID_qm_visito, ID_visitado, data_visita)VALUES(:idq, :idv, :dt)");
    $insert->bindValue(":idq", $_SESSION['loginID'], PDO::PARAM_STR);
    $insert->bindValue(":idv", $_GET['ID'], PDO::PARAM_STR);
    $insert->bindValue(":dt", $data, PDO::PARAM_STR);
    $insert->execute();
}

?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
4 horas atrás, XIM disse:

Boa tarde!!!!,fiz assim e ñ esta gravando no bd

 

LINK:

<?php

...

echo"<a  href='detalhes.php?ID=$objeto->ID'><img src='fotos/$objeto->foto'></a>";?>

...

?>

 

Perfil de outro usuário :

 

<?php
$ID=$_GET["ID"];
error_reporting (E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);
$conexao=mysql_connect("localhost","root","");
mysql_select_db("amadoamante");
$sql="SELECT * FROM dados_usuarios where ID='$ID'";
$resultado=mysql_query($sql);
$pegar=mysql_fetch_array($resultado);
echo $pegar['ID']."<br>";
echo $pegar['login']." : ";
echo $pegar['descricao']."<br>";
?>

<?php
$con=new PDO('mysql:host=localhost;dbname=amadoamante', 'root', '');
?>

<?php
$Verivisitas = $con->prepare("SELECT * FROM visitas WHERE ID_qm_visito = :idq AND ID_visitado = :idv");
$Verivisitas->bindValue(":idq", $_SESSION['loginID'], PDO::PARAM_STR);
$Verivisitas->bindValue(":idv", $_GET['ID'], PDO::PARAM_STR);
$rowVisita = $Verivisitas->rowCount();

if($rowVisita > 0){
    $data = date("d/m/y");
    $up = $con->preprare("UPDATE visitas SET data = :dt WHERE ID_qm_visito = :idq AND ID_visitado = :idv");
    $up->bindValue(":dt", $data, PDO::PARAM_STR);
    $up->bindValue(":idq", $_SESSION['loginID'], PDO::PARAM_STR);
    $up->bindValue(":idv", $_GET['ID'], PDO::PARAM_STR);
    $up->execute();
}else{
    $data = date("d/m/y");
    $insert = $con->prepare("INSERT INTO visitas(ID_qm_visito, ID_visitado, data_visita)VALUES(:idq, :idv, :dt)");
    $insert->bindValue(":idq", $_SESSION['loginID'], PDO::PARAM_STR);
    $insert->bindValue(":idv", $_GET['ID'], PDO::PARAM_STR);
    $insert->bindValue(":dt", $data, PDO::PARAM_STR);
    $insert->execute();
}

?>

 

Bom encontrei dois erros no seu código, o primeiro seria a falta do 

$Verivisitas->execute();

e no segundo erro seria:

4 horas atrás, XIM disse:

 $up = $con->preprare("UPDATE visitas SET data = :dt WHERE ID_qm_visito = :idq AND ID_visitado = :idv");

que você botou preprare e seria $up = $con->prepare();

De resto o sistema está funcionando perfeitamente em meu localhost.

sss2.png

sss.png

ssss3.png

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Gleyson Abreu,

 

Haha! Vamos jogar um time de PB. :smiley:

Compartilhar este post


Link para o post
Compartilhar em outros sites

boa noite!!! obrigado pela ajuda,coloquei do jeito que falaste ,este código coloquei no perfil que visitei,ao qual ñ se grava nada no bd, mas este mesmo codigo esta no link de "QUEM ME VISITOU" no meu perfil com o link   <?php ...  "echo '<a target="principal" href="quemvisitou.php?ID='.$row_Recordset1['ID'].'">
QUEM ME VISITOU</a><br>';   ?> ....grava no bd mas assim

BD.jpg

Compartilhar este post


Link para o post
Compartilhar em outros sites

boa noite!!!,consegui,funcionando de boa com foto e tudo,agora gostaria de saber como acerto  esta data,e como coloco aqui como resolvido,grato

 

Obrigado!!!!, Gleyson Abreu ,Omar~ , Jesse&Francinete ,Emerson.Oliveira , pela força

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.