Last active
June 13, 2016 19:14
-
-
Save Uriel29/e441fa74245999569a0e to your computer and use it in GitHub Desktop.
Este código criado pelo Marcio Pinheiro, verifica se um usuário logado viu um artigo. O código salva os dados dele no banco.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php defined('_JEXEC') or die; | |
//CÓDIGO CRIADO POR Marcio Pinheiro, PARA VERIFICAR SE UM USUÁRIO VIU UM ARTIGO QUE DEVERIA VER. | |
// CONTATO: marciop07@hotmail.com, https://www.facebook.com/MarcioP001 | |
//Criei uma tabela manual no banco de dados com nome "_log_diario"; | |
//Com os campos "id, article_id, user, data, ip" | |
//O campo id é auto incremento, | |
//O campo article_id é do tipo inteiro | |
//O campo user é varchar 255 | |
//O campo data é TIMESTAMP | |
//O Campo IP é Varchar | |
?> | |
<?php | |
$ip = $_SERVER["REMOTE_ADDR"]; //Pega o IP remoto da rede | |
$artigo_id = $cck->get('art_id')->value; //Pega o ID do Artigo | |
$user = JFactory::getUser(); //Acessa a tabela de usuários do joomla | |
$name = $user->name; //Recupera o nome do usuário logado | |
$db =&JFactory::getDBO(); //Conecta com o banco de dados | |
//Seleciona o campo user da tabela ipp_log_diario quando article_id for igual ao valor da variável $artigo_id E | |
//Quando o user for igual o valor da variável | |
$query = "SELECT user FROM ipp_log_diario WHERE article_id = '$artigo_id' AND user = '$name'"; | |
$db->setQuery($query); //Executa a consulta no banco | |
$result = $db->loadObject(); //Retorna o resultado | |
$nome = $result->user; //Lista o resultado do campo user, poderia ser qualquer campo da tabela | |
if(!$nome == $name){ //Verifica se o resultado da consulta for diferente do usuário logado | |
//Faz uma inserção na tabela ipp_log_diario | |
$query = "INSERT INTO ipp_log_diario(article_id, user, ip) VALUES ('$artigo_id','$name','$ip')"; | |
$db->setQuery($query); //Seleciona a query | |
$result = $db->loadObject(); //Executa a query | |
} else { //se não | |
$query = $db->getQuery(true); | |
//Verifica na tabela ipp_log_diario se existe um usuário quando o campo article_id for igual aovalor da variável $artigo_id | |
$query = "SELECT user FROM ipp_log_diario WHERE article_id = '$artigo_id' "; | |
$db->setQuery($query); //Executa a query | |
$result = $db->loadRowList(); //Retorna o resultado em um Array | |
} | |
?> | |
<?php if($cck->renderField('d_titulo_concat')) { ?> | |
<?php | |
echo "<h2 id='h2_'>".strip_tags($cck->renderField('d_categoria')." (".$cck->renderField('d_titulo_concat')).")</h2>" | |
?> | |
<?php }?> | |
<?php if($cck->renderField('d_descricao')) { ?> | |
<?php | |
echo "<div id='texto'>".$cck->renderField('d_descricao')."</div>" | |
?> | |
<?php }?> | |
<table width="100%" border="0" cellspacing="0" cellpadding="0"> | |
<?php if($cck->renderField('d_agendamento')) { ?> | |
<tr> | |
<td width="14%" style="font-weight:600">Agendado para: </td> | |
<td width="86%"><?php echo $cck->renderField('d_agendamento'); ?></td> | |
</tr> | |
<?php } ?> | |
<?php if($cck->renderField('d_status')) { ?> | |
<tr> | |
<td style="font-weight:600">Status: </td> | |
<td><?php echo $cck->renderField('d_status'); ?></td> | |
</tr> | |
<?php } ?> | |
</table> | |
<div> | |
<label style="font-family:Arial;font-weight:600;font-size:14px;">Visitantes: </label> | |
<?php | |
foreach($result as $results) //Trata o array | |
for($i = 0; $i < count($results); $i++) {//percorre todo o array de dados e enauanto encontrar um resultado ,vai imprimir | |
$result = $results[$i]; | |
echo "<label style='background:#2196f3; width:150px; color:#fff;padding-left:5px;'>".$result."</label>"; | |
} | |
?> | |
</div> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment