Ir para conteúdo

Arquivado

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

PierreMoraes

Ajuda com retorno de valores em uma tabela sql php

Recommended Posts

Olá a todos sou novo no grupo porem ja peguei muita solução aqui no forum.

Gostaria da ajude devocês pois estou com uma dificuldade em meu site. Tenho um painel ADMININSTRATIVO em meu site e tenho aceso a visão de algumas coisas dos usuarios como quantidade de logins, nivel de acesso, nome, sobrenome, email e outras coisas refetente ao conteúdo do site.

Ai vem minha dúvida preciso pegar o IP dos usuarios no meu banco de dados e sim ja tenho essa função, porem ele fica misturado com de todos outros, montei o mesmo para visualização dos ultimos 8 aceessos com data assim:

 

 <tbody>
   <?php
   $qnt_result_pg = 8;
   $stmtt=$bdd->prepare("SELECT * FROM vanguard_singin WHERE name_user=? ORDER BY id desc LIMIT $qnt_result_pg");
   $stmtt->execute(array($_SESSION['vg_usern']));
   while($rowip=$stmtt->fetch(PDO::FETCH_ASSOC))
   {
   ?>
   <tr>

     <td><?php echo $rowip['ip']; ?></td>
     <?php
     $source = $rowip['dt_log'];
     $date = new DateTime($source);
     ?>
     <td><?php echo $date->format('d/m/Y   G:y'); ?></td>
   </tr>
   <?php } ?>
</tbody>

e funciona perfeito porem preciso implementar essa função no meu painel, lembrando que esse código acima ele serve apenas para o proprio usuario visualizar.

 

ESSE É DO PAINEL

<tbody>

                                    
  <?php

  $query = "SELECT * FROM vanguard_users";
  $stmt = $bdd->prepare( $query );
  $stmt->execute();
  while($row_usuario=$stmt->fetch(PDO::FETCH_ASSOC))
  {
    $result_items2 = $bdd->query('SELECT count(1) FROM vanguard_items WHERE author="' .$row_usuario['usern']. '"');
    $row_items2 = $result_items2->fetch();
    $total_items2 = $row_items2[0];

    $result_follow = $bdd->query("SELECT count(1) FROM vanguard_follow WHERE id_following = {$row_usuario['id']}");
    $row_follow = $result_follow->fetch();
    $total_follow = $row_follow[0];


    $result_follower = $bdd->query("SELECT count(1) FROM vanguard_follow WHERE id_follower = {$row_usuario['id']}");
    $row_follower = $result_follower->fetch();
    $total_follower = $row_follower[0];


    extract($row_usuario);

    $name_user = $row_usuario['usern'];
    $result_ip = $bdd->prepare('SELECT COUNT(ip) FROM vanguard_singin WHERE name_user = "' .$row_usuario['usern']. '"');
    $result_ip->execute(array($name_user));
    $result_ip = $result_ip->fetchColumn();
  ?>  


  <tr class="odd gradeX">

    <td width="1%" class="f-s-600 text-white-transparent-8">

      <?php echo $row_usuario['id']; ?>                                            
    </td><!-- ID -->

    <td width="1%" class="with-img">

      <img src="<?= $url; ?>static/img/avatars/<?php echo $row_usuario['avatar']; ?>" class="img-rounded height-30" />
    </td><!-- PHOTO -->

    <td>

      <?php echo $row_usuario['usern']; ?>                                            
    </td><!-- USERNAME -->

    <td>

      <?php echo $row_usuario['lname']; ?>                                            
    </td><!-- NOME -->

    <td>

      <?php echo $row_usuario['fname']; ?>                                            
    </td><!-- SOBRENOME -->

    <td>
      <?php 
    if ($row_usuario['role'] == "1") 
    { 
      echo '<h5 class="text1">'.$lang['CLASS_01'].'<h5>';
    }
    elseif ($row_usuario['role'] == "2") 
    { 
      echo '<h5 class="text2">'.$lang['CLASS_02'].'<h5>';
    }
    elseif ($row_usuario['role'] == "3") 
    { 
      echo '<h5 class="text3">'.$lang['CLASS_03'].'<h5>';
    }
    elseif ($row_usuario['role'] == "4") 
    { 
      echo '<h5 class="text4">'.$lang['CLASS_04'].'<h5>';
    }
    elseif ($row_usuario['role'] == "5") 
    { 
      echo '<h5 class="text5">'.$lang['CLASS_05'].'<h5>';
    }
    elseif ($row_usuario['role'] == "6") 
    { 
      echo '<h5 class="text6">'.$lang['CLASS_06'].'<h5>';
    }
    elseif ($row_usuario['role'] == "7") 
    { 
      echo '<h5 class="text7">'.$lang['CLASS_07'].'<h5>';
    }
    else
    { 
      echo '<h5 class="">'.$lang['CLASS_00'].'<h5>';
    }; ?>                                                
    </td><!-- NIVEL DE ACESSO -->

    <td>

      <?php echo $row_usuario['created']; ?>                                            
    </td><!-- DATA DE CRIAÇÃO -->

    <td>

      <?php echo $row_usuario['email']; ?>                                            
    </td><!-- EMAIL -->

    <td>

      <?php echo $row_usuario['quotas']; ?>                                            
    </td><!-- QUOTA DE POSTS -->

    <td>

      <?php echo $row_ip['ip']; ?>
    </td><!-- IP -->

    <td>

      <?php if ($total_items2 == 0) { ?>0<?php } ?><?php if ($total_items2 > 0) { ?><?php echo $total_items2; ?><?php } ?>
    </td><!-- ITENS POSTADOS NA PAGINA DOWNS -->

    <td>

      <?php echo $total_follower; ?>
    </td><!-- SEGUINDO -->

    <td>

      <?php echo $total_follow; ?>
    </td><!-- SEGUIDOR -->

    <td>

      <?php echo $result_ip; ?>
    </td><!-- LOGINS TOTAL -->

    <td class="with-btn" nowrap>
      <a href="<?= $url; ?>edit_usuario/<?php echo $row_usuario['id']; ?>" class="btn btn-sm btn-primary width-60 m-r-2">Editar</a>

      <?php if ($row_usuario['status'] == "2") { ?>

      <a href="<?= $url; ?>edit_ban/<?php echo $row_usuario['id']; ?>" class="btn btn-sm btn-warning">DesBanir</a>

      <?php }else{ ?>

      <a href="<?= $url; ?>edit_ban/<?php echo $row_usuario['id']; ?>" class="btn btn-sm btn-danger">Banir</a>

      <?php } ?>
    </td><!-- OPÇÕES DE EDITAR E BANIR -->
  </tr>
  <?php } ?> 
</tbody>

Só deixar claro aqui sei que ninguém aqui é leigo mais para adiantar e talvez não haver confusão:

 

Esse inicio de código seria o que chama a tabela dos usuários e seus dados: 

 $query = "SELECT * FROM vanguard_users";
                                        $stmt = $bdd->prepare( $query );
                                        $stmt->execute();
                                        while($row_usuario=$stmt->fetch(PDO::FETCH_ASSOC))
                                        {

 

Essa segunda parte é uma segunda tabela onde chama algumas informações referente á um serviço do site:

$result_items2 = $bdd->query('SELECT count(1) FROM vanguard_items WHERE author="' .$row_usuario['usern']. '"');
                                            $row_items2 = $result_items2->fetch();
                                            $total_items2 = $row_items2[0];

 

Essa terceira parte chama outra tabela e informa outros dados referente ao perfil do usuario:

$result_follow = $bdd->query("SELECT count(1) FROM vanguard_follow WHERE id_following = {$row_usuario['id']}");
                                            $row_follow = $result_follow->fetch();
                                            $total_follow = $row_follow[0];

 

$result_follower = $bdd->query("SELECT count(1) FROM vanguard_follow WHERE id_follower = {$row_usuario['id']}");
                                            $row_follower = $result_follower->fetch();
                                            $total_follower = $row_follower[0];

 

 

Essa quarta parte chama a quantidade de logins do usuario :

Obs que esse é a mesma TABELA que preciso acessar para ver o IP do usuário porem ele só contabiliza os IP do mesmo usuário e soma assim dando a quantidade de logins no site.

 

extract($row_usuario);
                                            
                                            $name_user = $row_usuario['usern'];
                                            $result_ip = $bdd->prepare('SELECT COUNT(ip) FROM vanguard_singin WHERE name_user = "' .$row_usuario['usern']. '"');
                                            $result_ip->execute(array($name_user));
                                            $result_ip = $result_ip->fetchColumn();

 

Preciso dessa mesma tabela visualizar os ultimos logins e me informar o IP como mostro no inicio da publicação.

Quem puder ajudar agradeço muitissímo.

Abraço a todos e um ótimo final de semana.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Fala galera.
      Espero que todos estejam bem.
      Seguinte: Tenho um arquivo xml onde alguns campos estão com : (dois pontos), como o exemplo abaixo:
       
      <item>
      <title>
      d sa dsad sad sadasdas
      </title>
      <link>
      dsadas dsa sad asd as dsada
      </link>
      <pubDate>sadasdasdsa as</pubDate>
      <dc:creator>
      d sad sad sa ad as das
      </dc:creator>
      </item>
       
      Meu código:
       
      $link = "noticias.xml"; 
      $xml = simplexml_load_file($link); 
      foreach($xml -> channel as $ite) {     
           $titulo = $ite -> item->title;
           $urltitulo = $ite -> item->link;
           print $urltitulo = $ite -> item->dc:creator;
      } //fim do foreach
      ?>
       
      Esse campo dc:creator eu não consigo ler. Como faço?
       
      Agradeço quem puder me ajudar.
       
      Abs
       
       
    • Por First
      Olá a todos!
       
      Eu estou criando um sistema do zero mas estou encontnrando algumas dificuldades e não estou sabendo resolver, então vim recorrer ajuda de vocês.
      Aqui está todo o meu código: https://github.com/PauloJagata/aprendizado/
       
      Eu fiz um sistema de rotas mas só mostra o conteúdo da '/' não sei porque, quando eu tento acessar o register nada muda.
      E eu também quero que se não estiver liberado na rota mostra o erro de 404, mas quando eu tento acessar um link inválido, nada acontece.
      Alguém pode me ajudar com isso? E se tiver algumas sugestão para melhoria do código também estou aceitando.
       
       
      Desde já, obrigado.
    • Por landerbadi
      Olá pessoal, boa tarde
       
      Tenho uma tabela chamada "produtos" com os seguintes campos (id, produto) e outra tabela chamada "itens" com os seguintes campos (id, prod_01, prod_02, prod_03, prod_04).
       
      Na tabela produtos eu tenho cadastrado os seguintes produtos: laranja, maçã, uva, goiaba, arroz, feijão, macarrão, etc.
       
      Na tabela itens eu tenho cadastrado os itens da seguinte maneira:
       
      1, laranja, uva, arroz, feijão;
      2, maçã, macarrão, goiaba, uva;
      3, arroz, feijão, maçã, azeite
       
      Meu problema é o seguinte: 
      Eu escolho um produto da tabela "produtos", por exemplo "uva".  Preciso fazer uma consulta na tabela "itens" para ser listado todos os registros que contenham o produto "uva" e que todos os demais produtos estejam cadastrados na tabela "produtos".
       
      No exemplo acima seria listado apenas dois registros, pois o terceiro registro não contém o produto "uva". 
       
      Alguém pode me ajudar? Pois estou quebrando a cabeça a vários dias e não consigo achar uma solução.
×

Informação importante

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