Ir para conteúdo

POWERED BY:

Arquivado

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

deathnoterpg

Adicionar amigos em php e mysql

Recommended Posts

olá pessoal!!!

 

to precisando colocar um sistema no meu site onde os usuários podem adicionar e remover amigos, e

** eu tenho uma pagina chamada "profile.php" ela mostra o perfil do usuario selecionado ex: profile.php?id=admin" e o usuario adiciona o amigo atraves dessa pagina (profile.php) e tambem precisa ter uma pagina que lista todos os amigos adicionados!

 

esse sistema não precisa da aprovação do outro para se tornar amigo!

 

 

 

quem puder me ajudar eu agradeço!

:)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode fazer uma simples tabela SQL. Aonde nela possuirá 2 colunas. ID do profile e ID do amigo.

Depois é so você puxar as informações na hora de montar o profile.php.

 

PS: Não conheço nenhum sistema pronto. Foi so uma ideia.

Compartilhar este post


Link para o post
Compartilhar em outros sites

mann

eu criei uma tabela chamada amigos e dentro dela 2 colunas: id_player & id_amigo

agora como eu faço um link na pagina profile que pega o id do jogador que vai adicionar e o id dele msm? e depois inserir na tabela? e por ultimo como eu vou listar na pagina amigos.php todos os amigos do jogador?

 

:o

 

:ermm: vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

alguem ai??

 

tipo...

eu consegui fazer um link na pagina perfil que adiciona o amigo (pelo menos no banco de dados)

ele adiciona o meu id e o id do meu amigo..

mas como eu faço para na minha pagina amigos.php

mostrar o nome do meu amigo e não o id dele? :(

 

me ajudem...

 

VLW

Compartilhar este post


Link para o post
Compartilhar em outros sites

o php da minha pagina ta assim:

if (!$_GET['id'])
{
header("Location: home.php");
}
else
{
$query = $db->execute("select `id`, `nome_digimon`,`username`, `evolucao`, `digimon`, `level`, `kills`, `deaths`, `descri` from `players` where `username`=?", array($_GET['id']));
if ($query->recordcount() == 0)
{
	header("Location: home.php");
}
else
{
	$personagem = $query->fetchrow();

}
}

switch($_GET['adicionar'])
{
	case 'amigo':


$meuid = $player->id;
$amigoid = $personagem['id'];
$query = mysql_query("INSERT INTO amigos (id_player, id_amigo) VALUES ('$meuid', '$amigoid')");
		if ($query)
		{

			header("Location: home.php");

		}
		else
		{
			header("Location: habilidades.php");
		}
		break;}

o poblema é que ele insere no DB apenas o $meuid no id_player e o id_amigo fica com o valor 0 ..

alguem pode me dar uma luz?

;(

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu fiz no Mellho.com o que Tribb mencionou, criei uma tabela chamada amigos e coloquei 2 colunas: id_amigo e meu_id, ao chegar no perfil da pessoa eu pego o id dele, pode ser via get, exemplo www.mellho.com/index.php?u=1004

 

$id_do_amigo = $_GET["u"];

 

outra coisa, sempre que uma pessoa faz login na minha rede social é buscado o id do usuário para seta-lo no cookie, logo crio uma variavel para esse cookie da pessoa que está logada chamado $id_logado

 

$query = mysql_query("INSERT INTO amigos (id_player, id_amigo) VALUES ('$id_logado', '$id_do_amigo ')");

$query = mysql_query("INSERT INTO amigos (id_player, id_amigo) VALUES ('$id_do_amigo', '$id_logado')");

 

Note que fiz 2 inserções, pq quando eu listo os meus amigos faço assim

 

selecione * amigos WHERE meu_id = '$id_logado'

 

no filtro ele vai buscar todas as linhas onde há meu id nele

 

As 2 inserções: uma para meu amigo e outra para mim, não conheço outro modo

 

Espero que eu tenha entendido e ajudado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mais uma vez acentuando a segurança: é sempre bom usar mysql_real_escape_string().

Em um ataque de SQL Injection, mesmo que você não faça SELECT na tabela de logins e senhas, é fácil conseguir esses dados. Como? Pela função concat().

?id=admin' UNION ALL SELECT 1,concat(username,0x3d,password) FROM logins LIMIT 1,1--+

E pior: isto é bem mais fácil de ser feito do que se imagina. Isto porque há vários (vários mesmo) softwares automáticos que invadem sites usando SQLi e só dão o banco de dados todo, como se estivesse no PHPMyAdmin. Claro que não vou citar nenhum deles, mas em maioria são até gratuitos e fáceis de encontrar e de usar. Scripts Kiddies gastam horas usando Google Dorks, que nada mais são do que os recursos de pesquisa avançada do mecanismo (inurl, intext etc) para procurar sites vulneráveis.

[]'s

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.