Jump to content

sukinha1501

Members
  • Content count

    5
  • Joined

  • Last visited

Community Reputation

0 Comum

About sukinha1501

  • Birthday 01/15/1985

Informações Pessoais

  • Sexo
    Feminino
  • Localização
    RIO DAS OSTRAS / RJ

Contato

  • Skype
    SUKINHA1501
  • Facebook
    SUELLEN HASHIMURA
  1. sukinha1501

    Select Leader do Leader na tabela

    Boa noite. Estou quebrando a cabeça para fazer um select que aparentemente é simples, mas, não consigo fazer funcionar... Preciso preencher os "níveis" (Level1,Level2,Level3,Level4, etc...), selecionando o Leader do Leader. Exemplo: Eu , indiquei o João(ID 1),Que por sua vez, indicou a Maria(ID 2), que indicou o Lucas(ID 3). Eu Sou o Leader do João(ID 1), e ele tem que entrar na minha coluna "Level1". O João (ID 1) é Leader da Maria (ID 2 ), e ela tem que entrar na minha coluna "Level2", pois está abaixo do João. A Maria (ID 2) é Leader do Lucas (ID 3 ), e ele tem que entrar na minha coluna "Level3", pois está abaixo da Maria. Todos eles estão diretamente( no caso o joão) e indiretamente (no caso a Maria e o Lucas) na minha rede, mas cada um tem um Leader (upline), ou seja, um ID de indicação diferente, e não sei como fazer cada um deles entrar na coluna certa.... Tenho um banco de dados chamado nomedaempresa_mmn e neste tem a tabela members . As colunas desta tabela são essas: CREATE TABLE dummy ( `ID` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `Name` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Address` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `City` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `State` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Zip` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Country` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Phone` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Email` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Password` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `PaymentDetails` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `ref_by` INT(10) UNSIGNED NOT NULL, `Level1` INT(10) UNSIGNED NOT NULL, `Level2` INT(10) UNSIGNED NOT NULL, `Level3` INT(10) UNSIGNED NOT NULL, `Level4` INT(10) UNSIGNED NOT NULL, `Level5` INT(10) UNSIGNED NOT NULL, `Level6` INT(10) UNSIGNED NOT NULL, `Level7` INT(10) UNSIGNED NOT NULL, `Level8` INT(10) UNSIGNED NOT NULL, `Level9` INT(10) UNSIGNED NOT NULL, `Level10` INT(10) UNSIGNED NOT NULL, `Leader` INT(10) UNSIGNED NOT NULL, `Total` FLOAT(8,2) NULL DEFAULT '0.00', `Unpaid` FLOAT(8,2) NULL DEFAULT '0.00', `Paid` FLOAT(8,2) NULL DEFAULT '0.00', `IP` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Date` DATETIME NULL DEFAULT NULL, `DatePagamentoBonus` DATE NULL DEFAULT NULL, `pacote` VARCHAR(100) NOT NULL DEFAULT 'lider' COLLATE 'utf8_unicode_ci', `cpf` VARCHAR(32) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `banco` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `agencia` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `conta` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `titular` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `neteller` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `contasuper` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `paypal` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `token` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `status` INT(11) NOT NULL COMMENT '1 para ativado, 0 para inativo para recebimento de bonus (login independe disso!)', `banco_cpf` VARCHAR(30) NOT NULL COLLATE 'utf8_unicode_ci', `tipo_conta` ENUM('cc','poupanca') NOT NULL DEFAULT 'cc' COLLATE 'utf8_unicode_ci', `bairro` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `n_reativacoes` INT(11) NOT NULL DEFAULT '0', `pontos` INT(20) NULL DEFAULT '0', `totalultimascompras` FLOAT NOT NULL DEFAULT '0' COMMENT 'soma do montante de todas compras na loja virtual desde do ultimo saque efetuado, isso eh usado para manter o saldo disponivel coerente', `fb_uid` VARCHAR(50) NOT NULL COLLATE 'utf8_unicode_ci', `saldo_binario_sacado_e` INT(20) NOT NULL DEFAULT '0' COMMENT 'perna esquerda', `saldo_binario_sacado_d` INT(20) NOT NULL COMMENT 'perna direita', `produtos_indicados` INT(20) NOT NULL DEFAULT '0' COMMENT 'armazena a quantidade de produtos comprados na loja quando o comprador acessa via url pessoal do membro indicador', `graduacao` VARCHAR(30) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `saldo` FLOAT NOT NULL DEFAULT '0', `saldo_indiretos_sacado` FLOAT(20,2) NOT NULL DEFAULT '0.00', `proxima_perna` ENUM('e','d','a') NOT NULL DEFAULT 'a' COLLATE 'utf8_unicode_ci', `perna` ENUM('e','d') NOT NULL DEFAULT 'e' COLLATE 'utf8_unicode_ci', `pagamento_unilevel` DATE NOT NULL, `DatePagamentoBonusUnilevel` DATE NOT NULL, `ponto` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `rg` VARCHAR(40) NOT NULL COLLATE 'utf8_unicode_ci', `cestas` INT(10) NOT NULL DEFAULT '0', `feito_unilevel` DATE NOT NULL, `IsStandby` ENUM('S','N') NOT NULL DEFAULT 'N' COLLATE 'utf8_unicode_ci', `pagou_adesao` DATE NULL DEFAULT NULL, `cupom` FLOAT NULL DEFAULT NULL, `codigocupom` VARCHAR(50) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci' ) E o SELECT e UPDATE que estou tentando fazer é esse: (me corrijam por favor) $rs = mysql_query("SELECT *, DATE_FORMAT(DatePagamentoBonusUnilevel, '%d/%m/%Y') as DatePagamentoBonusUnilevelFormat FROM members WHERE Leader = '".(isset($_GET['father']) ? $_GET['father'] : $id)."' ORDER BY ID ASC") or die(mysql_error()); $mn = mysql_num_rows($rs); if($mn > 0 || isset($_GET['father'])){ $x = -1; for($i=0;$i<$mn;$i++){ if($i < $lat){ $M[$i] = mysql_fetch_array($rs); }else { $M_DERR[($i-$lat)] = mysql_fetch_array($rs); } } if(count($M_DERR) == 0){ $DERR = unserialize(urldecode($_GET['DERR'])); // REVIEW THIS LINE!! MAY BE WRONG OR NOT }else { $DERR = serialize($M_DERR); } $CM = count($M); $name = mysql_result(mysql_query("Select * From members WHERE ID = '".mysql_real_escape_string(isset($_GET['father']) ? $_GET['father'] : $id)."' LIMIT 1"),0,"Name"); echo '<style> body{ font-size:13px; font-family:Arial; font-weight:400; }</style>'; echo '<table border="0" celspacing="8" cellpadding="8" width="800">'; echo '<tr>'; echo '<td colspan="4"><center><img src="images/907397949.png" width="130"/><br/><b>("'.$name.'")</b></center><br/><br/></td>'; echo '</tr>'; echo '<tr>'; for($i=0; $i<$CM; $i++){ echo '<td width="200" valign="top" align="left">'; $DadMember = $M[$i]; $name = explode(" ",$M[$i][Name]); $name = ucfirst($name[0]); $MemCestBasc = IsMemberCestaBasica($M[$i]["ID"]); mysql_query("SELECT Leader FROM members WHERE Leader = '".$father."' ORDER BY ID ASC"); $dir = mysql_num_rows(mysql_query("SELECT * FROM members WHERE Leader = '".$id."'")); $indir = mysql_num_rows(mysql_query("SELECT * FROM members WHERE Leader = '".$Leader."'")); mysql_query("Update members set Level1=Level1+1 where ID=".$Leader."'"); mysql_query("Update members set Level2=Level2+1 where ID=".$Leader."'"); mysql_query("Update members set Level3=Level3+1 where ID=".$Leader."'"); mysql_query("Update members set Level4=Level4+1 where ID=".$Leader."'"); mysql_query("Update members set Level5=Level5+1 where ID=".$Leader."'"); mysql_query("Update members set Level6=Level6+1 where ID=".$Leader."'"); mysql_query("Update members set Level7=Level7+1 where ID=".$Leader."'"); mysql_query("Update members set Level8=Level8+1 where ID=".$Leader."'"); mysql_query("Update members set Level9=Level9+1 where ID=".$Leader."'"); mysql_query("Update members set Level10=Level10+1 where ID=".$Leader."'"); Me perdoem a bagunça. Mas é que tentei tantas coisas que já fiquei perdida... Se puderem me dar uma luz aqui, agradeço de coração.
  2. sukinha1501

    Definir parametros para graduação multinivel

    Então.... O código esta confuso mesmo,eu sei. Pois no codigo que tenho as graduações tem nomes diferentes (Bronze,Prata,ouro,topazio,etc...), e as graduações são definidas por pontuação alcancada e por conseguir graduar os downlines... Estou tentando alterá-lo para deixar as graduações por nível completo e não por pontuação, como está definido... Exemplo: A primeira graduação é o consumidor start. No codigo esta definido que para tal é necessario atingir 2000 pontos. Porem, o que quero fazer é definir parametros para que as pessoas não graduem por pontos e sim por níveis completos. Para atingir a primeira graduação (consumidor start), por exemplo, a pessoa teria que ter seu primeiro nivel completo, ou seja, 3 consumidores ativos. E assim por diante... A Tabela "Members" (onde estao armazenados os dados dos consumidores), fica no banco de dados nomedaempresa_mmn e Tem as seguintes colunas: CREATE TABLE dummy ( `ID` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `Name` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Address` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `City` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `State` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Zip` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Country` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Phone` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Email` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Password` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `PaymentDetails` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `ref_by` INT(10) UNSIGNED NOT NULL, `Level1` INT(10) UNSIGNED NOT NULL, `Level2` INT(10) UNSIGNED NOT NULL, `Level3` INT(10) UNSIGNED NOT NULL, `Level4` INT(10) UNSIGNED NOT NULL, `Level5` INT(10) UNSIGNED NOT NULL, `Level6` INT(10) UNSIGNED NOT NULL, `Level7` INT(10) UNSIGNED NOT NULL, `Level8` INT(10) UNSIGNED NOT NULL, `Level9` INT(10) UNSIGNED NOT NULL, `Level10` INT(10) UNSIGNED NOT NULL, `Leader` INT(10) UNSIGNED NOT NULL, `Total` FLOAT(8,2) NULL DEFAULT '0.00', `Unpaid` FLOAT(8,2) NULL DEFAULT '0.00', `Paid` FLOAT(8,2) NULL DEFAULT '0.00', `IP` VARCHAR(75) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `Date` DATETIME NULL DEFAULT NULL, `DatePagamentoBonus` DATE NULL DEFAULT NULL, `pacote` VARCHAR(100) NOT NULL DEFAULT 'lider' COLLATE 'utf8_unicode_ci', `cpf` VARCHAR(32) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `banco` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `agencia` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `conta` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `titular` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `neteller` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `contasuper` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `paypal` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `token` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `status` INT(11) NOT NULL COMMENT '1 para ativado, 0 para inativo para recebimento de bonus (login independe disso!)', `banco_cpf` VARCHAR(30) NOT NULL COLLATE 'utf8_unicode_ci', `tipo_conta` ENUM('cc','poupanca') NOT NULL DEFAULT 'cc' COLLATE 'utf8_unicode_ci', `bairro` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci', `n_reativacoes` INT(11) NOT NULL DEFAULT '0', `pontos` INT(20) NULL DEFAULT '0', `totalultimascompras` FLOAT NOT NULL DEFAULT '0' COMMENT 'soma do montante de todas compras na loja virtual desde do ultimo saque efetuado, isso eh usado para manter o saldo disponivel coerente', `fb_uid` VARCHAR(50) NOT NULL COLLATE 'utf8_unicode_ci', `saldo_binario_sacado_e` INT(20) NOT NULL DEFAULT '0' COMMENT 'perna esquerda', `saldo_binario_sacado_d` INT(20) NOT NULL COMMENT 'perna direita', `produtos_indicados` INT(20) NOT NULL DEFAULT '0' COMMENT 'armazena a quantidade de produtos comprados na loja quando o comprador acessa via url pessoal do membro indicador', `graduacao` VARCHAR(30) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `saldo` FLOAT NOT NULL DEFAULT '0', `saldo_indiretos_sacado` FLOAT(20,2) NOT NULL DEFAULT '0.00', `proxima_perna` ENUM('e','d','a') NOT NULL DEFAULT 'a' COLLATE 'utf8_unicode_ci', `perna` ENUM('e','d') NOT NULL DEFAULT 'e' COLLATE 'utf8_unicode_ci', `pagamento_unilevel` DATE NOT NULL, `DatePagamentoBonusUnilevel` DATE NOT NULL, `ponto` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci', `rg` VARCHAR(40) NOT NULL COLLATE 'utf8_unicode_ci', `cestas` INT(10) NOT NULL DEFAULT '0', `feito_unilevel` DATE NOT NULL, `IsStandby` ENUM('S','N') NOT NULL DEFAULT 'N' COLLATE 'utf8_unicode_ci', `pagou_adesao` DATE NULL DEFAULT NULL, `cupom` FLOAT NULL DEFAULT NULL, `codigocupom` VARCHAR(50) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci' ) A questão é... Como definir parametros para identificar quantas pessoas tem em cada "nível"(Level1, Level2,Level3,etc...), e se as mesmas estão "ativas". OBS: AS ativações mensais de cada um aparecem na coluna `DatePagamentoBonusUnilevel`, so que aparecem em forma de data....
  3. Boa tarde. Tenho um sistema multinivel onde preciso alterar, ou criar, alguns paramentros para definir a forma como as graduações sao alcancadas no mesmo. Atualmente as graduações no sistema sao alcancadas conforme pontuação pre-definida. Porem, preciso definir parametros que façam com que as graduações sejam alcancadas conforme o numero de donwlines ativos. A minha matriz e de 3x5. EXEMPLO: no nivel se os 3 downlines estiverem ativos(compraram esse mes) , o cadastrado atinge a graduação de consumidor start. no nivel 2 são 9 downlines, que se somados com os 3 do 1º nivel, totalizam 12 pessoas. Se essas 12 pessoas estiverem ativas (efetuaram compra no mes) , o cadastrado se torna um consumidor inteligente. e assim por diante. Alguma ideia de como insiro esseparametro para coleta de dados de ativação dos downlines para que o sistema reconhça quais graduações dar a cada um deles? Meu codigo esta assim\: (alterei as nomenclaturas das graduações, porém, nas funcoes permanece como o original "getQuantosQualificadosBronze, getQuantosQualificadosPrata, etc...") function getGraduacaoPorId($graduacao){ switch($graduacao){ case 1 : return "Consumidor Start"; break; case 2 : return "Consumidor Inteligente"; break; case 3 : return "Consumidor Star"; break; case 4 : return "Consumidor Sênior"; break; case 5 : return "Consumidor Diamante"; break; case 6 : return "Consumidor Duplo Diamante"; break; case 7 : return "Consumidor Triplo Diamante"; break; default : return "S/ Graduacao"; break; } } function getGraduacao($arr){ $graduacao = 0; // Consumidor Start if($arr['pontos'] >= 2000){ $graduacao = 1; } $q = quantosQualificados($arr); // Consumidor Inteligente if($arr['pontos'] >= 5000){ if(getQuantosQualificadosBronze($arr) >= 2){ $graduacao = 2; } } // Consumidor Star if($arr['pontos'] >= 10000){ if($q >= 4){ if(getQuantosQualificadosPrata($arr) > 0){ $graduacao = 3; } } } // Consumidor Sênior if($arr['pontos'] >= 25000){ if($q >= 4){ if(getQuantosQualificadosPrata($arr) >= 2){ $graduacao = 4; } } } // Consumidor Diamante if($arr['pontos'] >= 50000){ if($q >= 4){ if(getQuantosQualificadosPrata($arr) > 0 && getQuantosQualificadosOuro($arr) > 0){ $graduacao = 5; } } } // Consumidor Duplo Diamante if($arr['pontos'] >= 120000){ if($q >= 6){ if(getQuantosQualificadosOuro($arr) > 0 && getQuantosQualificadosTopazio($arr) > 0){ $graduacao = 6; } } } // Consumidor Triplo Diamante if($arr['pontos'] >= 250000){ if($q >= 6){ if(getQuantosQualificadosOuro($arr) > 0 && getQuantosQualificadosTopazio($arr) > 0 && getQuantosQualificadosPrata($arr) > 0){ $graduacao = 7; } } } return $graduacao; } function quantosQualificados($arr){ $rs = mysql_query("SELECT ID FROM members WHERE Leader = '".$arr['ID']."' AND status = 1"); $qualificados = 0; for($i = 0; $i < mysql_num_rows($rs); $i++) { $iddd = mysql_result($rs,$i,"ID"); $q = mysql_num_rows(mysql_query("SELECT ID FROM members WHERE Leader = '".$iddd."' AND status = 1")); $qualificados += $q; } return $qualificados; } function getQuantosQualificadosBronze($arr){ $rs = mysql_query("SELECT ID FROM members WHERE Leader = '".$arr['ID']."' AND graduacao = 'bronze'"); return mysql_num_rows($rs); } function getQuantosQualificadosPrata($arr){ $rs = mysql_query("SELECT ID FROM members WHERE Leader = '".$arr['ID']."' AND graduacao = 'prata'"); return mysql_num_rows($rs); } function getQuantosQualificadosOuro($arr){ $rs = mysql_query("SELECT ID FROM members WHERE Leader = '".$arr['ID']."' AND graduacao = 'ouro'"); return mysql_num_rows($rs); } function getQuantosQualificadosTopazio($arr){ $rs = mysql_query("SELECT ID FROM members WHERE Leader = '".$arr['ID']."' AND graduacao = 'topazio'"); return mysql_num_rows($rs); } function getQuantosQualificadosEsmeralda($arr){ $rs = mysql_query("SELECT ID FROM members WHERE Leader = '".$arr['ID']."' AND graduacao = 'esmeralda'"); return mysql_num_rows($rs); } function getQuantosQualificadoRubi($arr){ $rs = mysql_query("SELECT ID FROM members WHERE Leader = '".$arr['ID']."' AND graduacao = 'rubi'"); return mysql_num_rows($rs); } function getQuantosQualificadosPlatinium($arr){ $rs = mysql_query("SELECT ID FROM members WHERE Leader = '".$arr['ID']."' AND graduacao = 'platinium'"); return mysql_num_rows($rs); } $DISP = $DISP == 1987 ? 0 : $DISP; $DISP = $arr['Unpaid']; $ganhos = $arr['Total']; //$DISP < 0 ? $DISP = 0 : false; $DISP = $arr['status'] == 0 ? 0 : $DISP; mysql_query("UPDATE members SET saldo = '".($DISP)."' WHERE ID = '".$id."' LIMIT 1"); $_SESSION['DISP'] = $DISP; function IsMemberCestaBasica($CodigoMembro) { $ConsMem = mysql_query( " Select IsStandby, DatePagamentoBonusUnilevel, DateDiff(Now(), DatePagamentoBonusUnilevel) as DatePagamentoBonusUnilevelDiff From members Where ID = " . $CodigoMembro . " Limit 1 "); $TotaMem = mysql_num_rows($ConsMem); $DadoMem = mysql_fetch_array($ConsMem); $RetFinal = array(); if($TotaMem) { if( $DadoMem["IsStandby"] == "S" ) { $RetFinal = array("Imagem" => "Laranja", "Mensagem" => "Standby"); }else{ if( $DadoMem["DatePagamentoBonusUnilevel"] == "0000-00-00" ) { $RetFinal = array("Imagem" => "Nunca", "Mensagem" => "Nenhuma Compra Feita"); }else{ if( $DadoMem["DatePagamentoBonusUnilevelDiff"] < 30 ){ $RetFinal = array("Imagem" => "Verde", "Mensagem" => "Última Compra á " . $DadoMem["DatePagamentoBonusUnilevelDiff"] . " dias"); }elseif( $DadoMem["DatePagamentoBonusUnilevelDiff"] >= 30 && $DadoMem["DatePagamentoBonusUnilevelDiff"] <= 60 ){ $RetFinal = array("Imagem" => "Amarelo", "Mensagem" => "Última Compra á " . $DadoMem["DatePagamentoBonusUnilevelDiff"] . " dias"); }else{ $RetFinal = array("Imagem" => "Vermelho", "Mensagem" => "Última Compra á " . $DadoMem["DatePagamentoBonusUnilevelDiff"] . " dias"); } } } }else{ $RetFinal = array("Imagem" => "Nunca", "Mensagem" => "Nenhuma Compra Feita"); } mysql_free_result($ConsMem); return $RetFinal; } ?>
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.