Jump to content
Fórum Script Brasil
  • 0

lentidão após efetuar uma consulta


m4rqu1nh0s
 Share

Question

Senhores bom dia!

Estou desenvolvendo uma aplicação em que exibo todos os campos do banco e em seguida efetuo o cadastro, porém quando coloquei uma consulta no banco pra verificar se meu cadastro já foi feito ele me apresentou muita lentidão na pagina.

abaixo segue meu codigo!!

poderia me ajudar?

<table width="950" height="42" border="1" cellpadding="0" cellspacing="0">
  <tr>
    <td width="100" height="21" align="center" bgcolor="#1F487C"><font color="#FFFFFF"><p><strong>Ramal</strong></p></font></td>
    <td width="167" align="center" bgcolor="#1F487C"><font color="#FFFFFF"><p><strong>Localização</strong></p></font></td>
    <td width="108" align="center" bgcolor="#1F487C"><font color="#FFFFFF"><p><strong>Discador</strong></p></font></td>
    <td width="166" align="center" bgcolor="#1F487C"><font color="#FFFFFF"><p><strong>Operação</strong></p></font></td>
    <td width="45" align="center" bgcolor="#1F487C"><font color="#FFFFFF"><p><strong>IP</strong></p></font></td>
    <td width="186" align="center" bgcolor="#1F487C"><font color="#FFFFFF"><p><strong>MAC</strong></p></font></td>
    <td width="96" align="center" bgcolor="#1F487C"><font color="#FFFFFF"><p><strong>Checklist</strong></p></font></td>
    
    <td width="64" align="center" bgcolor="#1F487C"><font color="#FFFFFF"><p><strong>Status</strong></p></font></td>
  </tr>
   <?php

include 'config.php';
include "includes/functions.php"; 
session_start();
protegePagina();
 
$sql_visualizar = mysql_query("SELECT * FROM monitoracao_tb where discador = 'APCCTX01SALAS' ORDER BY ramal");
  	while($linha = mysql_fetch_array ($sql_visualizar)){
  	$id = $linha['id'];
	$ramal = $linha['ramal'];
	$localizacao = $linha['localizacao'];
	$discador = $linha['discador'];
	$operacao = $linha ['operacao'];
	$ip = $linha['ip'];
	$mac = $linha['mac'];
?>


  <tr>
    <td align="center"><p><?php echo $ramal ?></p></td>
    <td align="center"><p><?php echo $localizacao ?></p></td>
    <td align="center"><p><?php echo $discador ?> </p></td>
    <td align="center"><p><?php echo $operacao ?> </p></td>
    <td align="center"><p><?php echo $ip ?></p></td>
    <td align="center"><p><?php echo $mac ?></p></td>
    <td align="center"><a href="javascript:abrir('lista_ramal.php?id=<?php echo $id;?>');"><img src="img/checklist.png" width="24" height="24"></a></td>
    <td align="center">
<?php 
$data = date('Y-m-d');
$consulta = mysql_query("SELECT * FROM dados WHERE ramal='$ramal' and data ='$data'");
$consul = mysql_num_rows($consulta);
 
if($consul == 0){
	
	echo "<img src='img/no.png' width='20' height='20'>";
   }
else
{
	echo "<img src='img/Ok.png' width='20' height='20'>";
}
    
    ?>
    
    </td>
    <?php }  ?>
    
  </tr>
</table>

essa foi a linha que inserir e me apresentou lentidão, existe outro metodo para comparar se o cadastro já foi feito?

<?php
$data = date('Y-m-d');
$consulta = mysql_query("SELECT * FROM dados WHERE ramal='$ramal' and data ='$data'");
$consul = mysql_num_rows($consulta);

if($consul == 0){

echo "<img src='img/no.png' width='20' height='20'>";
}
else
{
echo "<img src='img/Ok.png' width='20' height='20'>";
}

?>

agradeço a ajuda

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Bom dia,

se a sua tabela dados for muito grande, sugiro fazer assim:

$data = date('Y-m-d');
$consulta = mysql_query("SELECT count(*) as qtd FROM dados WHERE ramal='$ramal' and data ='$data'");
$consul = mysql_fetch_assoc($consulta);

if($consul['qtd'] > 0){

//
}
else
{
  //
}

ou seja, você não carrega os registros na memória para saber a quantidade de registros retornados e sim pega a quantidade de registros retornado direto na query.

Link to comment
Share on other sites

  • 0

lembrando que funções mysql_* estão obsoletas desde o PHP 5.5  e serão removidas do PHP em breve. Prefira usar MySQLi ou PDO. Veja mais aqui: http://www.ultimatephp.com.br/php-por-que-não-utilizar-funcoes-mysql

 

15 Dicas de PHP: http://www.ultimatephp.com.br/guia/

15 Ferramentas essenciais para PHP: http://www.ultimatephp.com.br/15-ferramentas-gratuitas-php-produtividade/

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.8k
    • Total Posts
      646.6k
×
×
  • Create New...