Guest --Antonio -- Postado Outubro 18, 2007 Denunciar Share Postado Outubro 18, 2007 Ola, então pesso eu tenho a seguinte duvida como saber quem inidico quem em niveis tipo. cod_user nome_user ind_user cidade_user 2 William 0 Penha 3 Luciane 2 Penha 4 Wagner 2 Penha 5 Maria da 2 Penha 6 Kristiano 3 Penha 7 Beto 6 Penha Nesse exemplo o usuario de codigo 2 indicou . 3 Luciane 2 Penha 4 Wagner 2 Penha 5 Maria da 2 Penha Assim o usuario de codigo 3 indicou. 6 Kristiano 3 Penha E também assim o usuario de codigo 6 indicou. 7 Beto 6 Penha ......Qual é a pergunta?Simpes como eu vou ligar todos eles exemplo vou clicar no usuario de codigo 2E dai o sistema vai falar OH o usuario 2 indico diretamente esses. 3 Luciane 2 Penha 4 Wagner 2 Penha 5 Maria da 2 Penha Segundo nivel. 6 Kristiano 3 Penha Terceiro nivel. 6 Kristiano 3 Penha Bem assim pro primeiro nivel é facil.<?php $host = "localhost"; $user = "root"; $senha = ""; $bd = "banco"; mysql_connect($host,$user,$senha); mysql_select_db($bd); $sql = mysql_query("Select cod_user, nome_user, ind_user, cidade_user from teste"); while($a = mysql_fetch_array($sql)) { echo "<tr><td bgcolor=\"#CCCCCC\" background=\"img/masnoticia.jpg\" height=\"20\" style=\"color:#FFFFFF;\" align=\"left\"> ".$a[nome_user]."</td><td> - Indiciados <a href=".$PHP_SELF."?indicados=".$a[ind_user]." target=\"_blank\">(Clique)</a><br /></td></tr><br />"; } if(isset($_GET['indicados'])){ $indicados = $_GET['indicados']; $sql = mysql_query("Select cod_user, nome_user, ind_user, cidade_user from teste where ind_user=$indicados"); while($a = mysql_fetch_array($sql)) { echo "<tr><td bgcolor=\"#CCCCCC\" background=\"img/masnoticia.jpg\" height=\"20\" style=\"color:#FFFFFF;\" align=\"left\"> ".$a[nome_user]."</td><td> - Indiciados <a href=".$PHP_SELF."?indicados=".$a[ind_user]." target=\"_blank\">(Clique)</a><br /></td></tr>"; } } ?>Mas e para ligar o resto :( Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Outubro 18, 2007 Denunciar Share Postado Outubro 18, 2007 A lógica desses sistema de pirâmide é bem complexa, a modelagem do banco de dados não é feita dessa maneira (eu pelo menos não faria...se houver um número máximo de níveis, eu guardaria os indicados diretamente/indiretamente, na própria coluna que guarda quem foi que fez indicação... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --Antonio -- Postado Outubro 18, 2007 Denunciar Share Postado Outubro 18, 2007 Tah digamos então que eu tenha na modelagem da tablea a colunaindicacoes :Dentro deça coluna eu colocaria todos os indicados diretamente e inderetamente dividos por uma , mas digamos assimNome: AntonioIdade: 18Codigo: 007Indicações: 008, 009, 010, 011 ( Porem o 10 e o 11 são do usuario 009 e assim são inderetamente meus porem como eu demostraria isso? ) teria que ter uma indicação para user diretos e user indiretos?Ativo: 1 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Outubro 18, 2007 Denunciar Share Postado Outubro 18, 2007 Se eu estivesse fazendo, no momento que a pessoa se cadastra no sistema eu criaria as ligações... se tiver 5 níveis, criaria 5 colunas, nivel1,nivel2...nivel5, e guardaria ai os IDs dos indicados... acho que é o modo mais simples... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Shure Man Postado Outubro 18, 2007 Denunciar Share Postado Outubro 18, 2007 (editado) olha so, eu faria assim..montaria um campo no banco de dados com o nome de referencia.até ai tudo bem, agora você pode gravar pelo id do referente.exemploID NOME REFENCIA1 Carlos 02 Joaquim 1olha a referncia do joaquim esta 1.logo quem indico ele foi o Carlos x)assim, teria como você fazer uma arvore gigantesca, tipo..ID NOME REFENCIA1 Carlos 02 Joaquim 13 Maria 24 Silva 3logo quem indico a Sivia foi a Maria.mais quem indico a Maria?o Joaquim.mais quem indico o Joaquim?foi o Carlos...mais qeum indico o Carlos?ninguém.logo quando o cara tiver referencia = 0 ou = a vazio ngm indico ele.ta mais como fazer isto?vamos a pratica então.faça um combobox com os nomes que estão no banco de dados..<? include("conectar_com_o_banco.php"); $sql = "SELECT * FROM tabela"; $exe = mysql_query($sql); echo "Se alguém tiver lhe indicado, escolha o nome no campo referencia, ou deixe em branco!<br>"; echo "<form action=\"grava.php\" name=\"referencia\" method=\"POST\">"; echo "NOME : <input type=\"text\" name=\"nome\"><br>"; echo "<select name=\"referencia\">"; while($linha=mysql_fetch_object($exe)){ echo "<option value=\"\">Referencia</option>"; echo "<option value=\"".$linha->id."\">".$linha->nome."</option>"; } echo "</option>"; ?> o seu campo de refencia esta montado. como gravar no banco de dados? facil de mais uai... bora la, <? include("conectar_com_o_banco.php"); if($_POST['referencia'] == ""){ $_POST['referencia'] = "0"; } $sql = "INSERT INTO tabela(nome,referencia) VALUES('".$_POST['nome']."','".$_POST['referencia']."')"; $exe = mysql_query($sql); echo "Cadastrado com sucesso!"; ?>olha, isto é uma coisa, bem simples é so pra você intender a logica, e se tiver algo errado me descupa e que eu estou com preguiça de abrir o zend aqui. xDenfim, boa sorte. Editado Outubro 18, 2007 por ESerra Utilize as tags [code] [/code] Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --Antonio -- Postado Outubro 19, 2007 Denunciar Share Postado Outubro 19, 2007 Seu codigo esta bem porem para uma unica indicação e se fosse com niveis tipo001 Carlos 1002 Maria ( Amiga de Carlos ) 001003 Joao ( Amigo de Maria ) 002004 Pedro ( Amigo de Joao ) 003Porem todos eles são indicados diretamente e indiretamente por Carlos.Já que até o nivel 7 seriam da rede dele você entendeu?Essa parte de niveis que esta complicando a cabeça Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Shure Man Postado Outubro 19, 2007 Denunciar Share Postado Outubro 19, 2007 isto é muito complexo mesmo, eu tomei uma surra um dia deste pra fazer uma arvore destas, mais olha so, você pode fazer algo assim..Maria teria referencia de Carlos.logo na hora de mostrar você faria dois while(){}um pra colocar o option = $linha-> id //que seria o que não foram indicadose um pra colocar o option = $linha->referencia //os que foram indicados.logo você colocando o id refencia pra maria, ficaria assim..001 Carlos 1 <- aqui eu acho que deveria ser 0, fica mais facil de intender...002 Maria ( Amiga de Carlos ) 001003 Joao ( Amigo de Maria ) 001004 Pedro ( Amigo de Joao ) 001todos com referencia em Carlos, mais se tiver que fazer um controle pra pagar cache, não seria cache mais me fugiu as palavras agora.pagar uma comissão. isto.pagaria tudo pro Carlos e não pra Maria, ou Pro Joao.enfim, eu acho que eu fico bem explicando na parte de cima. x) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest --Antonio --
Ola, então pesso eu tenho a seguinte duvida como saber quem inidico quem em niveis tipo.
cod_user nome_user ind_user cidade_user
2 William 0 Penha
3 Luciane 2 Penha
4 Wagner 2 Penha
5 Maria da 2 Penha
6 Kristiano 3 Penha
7 Beto 6 Penha
Nesse exemplo o usuario de codigo 2 indicou .
3 Luciane 2 Penha
4 Wagner 2 Penha
5 Maria da 2 Penha
Assim o usuario de codigo 3 indicou.
6 Kristiano 3 Penha
E também assim o usuario de codigo 6 indicou.
7 Beto 6 Penha
......
Qual é a pergunta?
Simpes como eu vou ligar todos eles exemplo vou clicar no usuario de codigo 2
E dai o sistema vai falar OH o usuario 2 indico diretamente esses.
3 Luciane 2 Penha
4 Wagner 2 Penha
5 Maria da 2 Penha
Segundo nivel.
6 Kristiano 3 Penha
Terceiro nivel.
6 Kristiano 3 Penha
Bem assim pro primeiro nivel é facil.
Mas e para ligar o resto :(
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.