Ir para conteúdo

POWERED BY:

Arquivado

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

MerciaGabi

como buscar uma lista de pessoas que indicaram

Recommended Posts

Pessoal Bom Dia

Não sei se este é o tópico certo, me desculpe caso tenha errado.

Estou montando um pequeno sistema de Controle Fidelidade e Vendas para um restaurante, a fim de um grande numero de pessoas conhecer o estabelecimento.

O Objetivo do sistema será fazer com que as pessoas que visitem o restaurante pela primeira vez, possa indica-los a seus amigos e assim sucessivamente, enviando um email para eles.

Qdo este amigo vier ao estabelecimento e consumir, o amigo que indicou receberia uma um percentual de desconto para o seu próximo retorno.

Como o objetivo é fazer com que o estabelecimento seja divulgado para o maior numero de pessoas possiveis através do boca-a-boca, a dono do restaurante quer promover esta iniciativa e concederá um bonus extra que será um desconto de 100% para o cliente que conseguir indicar direta e indiretamente 20 pessoas em um mês.

O meu problema esta em como fazer o controle destas indicações e poder controlar qtas pessoas já foram indicadas por um determinado cliente.

Montei uma tabela de clientes, onde consigo definir qual o amigo que o indiciou.

CLIENTES

ID_CLI
NOME
EMAIL
DT_ULTIMA_VISITA
EMAIL_AMIGO_INDICANTE
ID_AMIGO_INDICANTE
TELEFONE

Eu já consegui fazer uma consulta para saber os indicados apresentados pelo amigo.
SELECT ID_AMIGO_INDICADO, EMAIL_AMIGO_INDICADO from CLIENTES where ID_CLI = ID_AMIGO_INDICANTE

mas não consigo avançar para descobrir quais os Amigos que foram indicados pelos seus amigos.

Alguém pode me dar uma luz.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Informe o Banco de Dados pois alguns tem soluções próprias para sql hierarquicas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O Mysql não , mas já li sobre possíveis soluções.

"Queries hieararquicas mysql"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Preciso de uma orientação de como criar uma função recursiva, que seja capaz de ler uma tabela MySql.

Como resultado, terá que gerar uma tabela temporaria em MYSQL , onde a partir desta tabela será mostrado a visualização de quem esta ligado a quem. A tabela principal seria
ID, NOME, IDP

1,A,0

2,B,1
3,C,1
4,D,2
5,E,2
6,F,2
7,G,3
8,H,3
9,I,3
10,J,1
11,K,,10
12,L,5
13,M,5
14,N,5

*IDP = Significa a que registro, deverá ser ligado o registro em questão.

//////////////////////// TABELA TEMPORARIA RESULTADO \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

ID_TEMP,Linha,Nome,ID
1,1,A
2,2,B,
3,2,C,
4,2,J,
5,3,D
6,3,E
7,3,F
8,3,G
9,3,H
10,3,I
11,3,K
12,4,L
13,4,M
14,4,N

//// VISUALMENTE PRECISAREI MOSTRAR A SEGUINTE SEQUENCIA ****
Linha 1 = A

Linha 2 = B,C,J
Linha 3 = D,E,F,G,H,I,K
Linha 4 = L,M,N

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Tudo bem pessoal?
       
      No código abaixo, estou fazendo uma consulta nas tabelas, banners e banners_referencia
      Meu objetivo é trazer resultados com valores iguais ao nome da cidade declarada na $cidade ou resultados com a referencia Total.
      O problema é que está trazendo todos os resultados. Tenho 10 linhas, 1 com o nome da cidade e duas com o valor Total, então o resultado teria que ser de apenas 3 linhas, mas mostra tudo.
       
      $banner = "SELECT A.*, B.* FROM banners A, banners_referencia B WHERE B.cod_referencia = A.cod_referencia AND A.cidade = '$cidade' OR B.referencia = 'Total' ORDER BY RAND()";
      $banner = mysqli_query($conexao, $banner) or die ("Banner não encontrado");
      while($busca= mysqli_fetch_array($banner)){
          print $busca['cidade'].'<br>';
      };
       
      Alguém consegue me ajudar?
    • Por Rafael_Ferreira
      Não consigo carregar a imagem do captcha do meu formulário. Foi testado com o xampp e easyphp. Também não carregou a imagem de outros captcha. 
       
       
    • Por luiz monteiro
      Olá, tudo bem?
       
      Estou melhorando meu conhecimento em php e mysql e, me deparei com o seguinte. A tabela da base de dados tem um campo do tipo varchar(8) o qual armazena números. Eu não posso alterar o tipo desse campo. O que preciso é fazer um select para retornar o números que contenham zeros a direita ou a esquerda.
      O que tentei até agora
       
      Ex1
      $busca = $conexao->prepare("select campo form tabela where (campo = :campo) ");
      $busca->bindParam('campo', $_REQUEST['campo_form']);
       
      Se a direita da string $_REQUEST['campo_form'] termina ou inicia com zero ou zeros, a busca retorna vazio.
      Inseri dados numéricos, da seguinte maneira para testar: 01234567;  12345670: 12345678: 12340000... entre outros nessa coluna. Todos os valores que não terminam ou não iniciam com zero ou zeros, o select funciona.
       
       
      Ex2
      $busca = $conexao->prepare("select campo form tabela where (campo = 0340000) ");
      Esse número está cadastrado, mas não retorna.
       
      Ex3
      $busca = $conexao->prepare("select campo form tabela where (campo = '02340001' ) ");
      Esse número está cadastrado, mas não retorna.
       
       
      Ex4
      $busca = $conexao->prepare("select campo form tabela where (campo like 2340000) ");
      Esse número está cadastrado, mas não retorna.
       
      Ex5
      $busca = $conexao->prepare("select campo form tabela where (campo like '12340000') ");
      Esse número está cadastrado, mas não retorna.
       
      Ex6
      $busca = $conexao->prepare("select campo form tabela where (campo like '"12340000"' ) ");
      Esse número está cadastrado, mas não retorna.
       
       
      Ex7
      $busca = $conexao->prepare("select campo form tabela where (campo like :campo) ");
      $busca->bindParam('campo', $_REQUEST['campo_form'])
      Não retorna dados.
       
      O  $_REQUEST['campo_form'] é envio via AJAX de um formulário. 
      Usei o gettype para verificar o post, e ele retorna string.
      Fiz uma busca com número 12345678 para verificar o que o select retorna, e também retrona como string.
       
      Esse tipo de varchar foi usado porque os números que serão gravados nesse campo,  terão zeros a direita ou na esquerda. Os tipos number do mysql não gravam zeros, então estou usando esse. O problema é a busca.
      Agradeço desde já.
       
       
    • Por daemon
      Tenho 3 selects assim com varias categorias...
       
              $sql = "SELECT * FROM topicos          WHERE idcategoria = $idcategoria          AND pubdate BETWEEN NOW() - INTERVAL $intervalo1_horas_ou_minutos $tipo_intervalo1_horas_mnutos AND          NOW() - $intervalo2_horas_ou_minutos ORDER BY pubdate DESC LIMIT 1"; Preciso que na minha pagina principal (index) mostre este registro por 10minutos.. passando de 10 minutos mostra o resultado do proximo select (categoria)..
×

Informação importante

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