Ir para conteúdo
Fórum CódigoFonte.net

fabiobritors

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

  1. fabiobritors

    Sobrecarga no servidor PHP

    Bom dia pessoal, meu nome é Fabio Brito e gostaria da ajuda de vocês quanto a um problema que estou enfrentando com uma aplicação hospedada na Locaweb. Meu site é de uma imobiliária, portanto utiliza de PHP e MYSQL para fazer buscas de imóveis no site. O problema é que a Locaweb esta ameaçando tirar meu site do ar pois está causando sobre carga no servidor compartilhado deles e alegam que o problema está em nosso código. Meu site tem em torno de 15Mil acessos mês então este não é o problema. Abaixo segue o código PHP da página mais requisitada do site: <? include("inc/config.php"); ?> <? /* PAGINACAO */ $_SESSION['regs_pp'] = 6; !isset($_GET["pg"]) ? $pg=1 : $pg=$_GET["pg"]; $comeca_em = ($pg-1)*$_SESSION['regs_pp']; // paramentros para navegacao entre os resultados $param = ''; if( isset($_GET['favoritos']) ) { $param.="favoritos=true&"; } if( isset($_GET['lancamentos']) && $_GET['lancamentos']=='true' ) { $param.="lancamentos=true&"; } if( isset($_GET['estagio']) ) { $param.="estagio=".$_GET['estagio']."&"; } if( isset($_GET['finalidade']) ) { $param.="finalidade=".$_GET['finalidade']."&"; } if( isset($_GET['tipo']) ) { $param.="tipo=".$_GET['tipo']."&"; } if( isset($_GET['busca_cidade']) ) { $param.="busca_cidade=".urlencode($_GET['busca_cidade'])."&"; } if( isset($_GET['dormitorio'])) { $param.="dormitorio=".$_GET['dormitorio']."&"; } if( isset($_GET['garagem']) ) { $param.="garagem=".$_GET['garagem']."&"; } if( isset($_GET['de1']) ) { $param.="de1=".$_GET['de1']."&"; } if( isset($_GET['de2']) ) { $param.="de2=".$_GET['de2']."&"; } if( isset($_GET['ate1']) ) { $param.="ate1=".$_GET['ate1']."&"; } if( isset($_GET['ate2']) ) { $param.="ate2=".$_GET['ate2']."&"; } if( isset($_GET['pre&#231;o']) ) { $param.="pre&#231;o=".$_GET['pre&#231;o']."&"; } if( isset($_GET['preco2']) ) { $param.="preco2=".$_GET['preco2']."&"; } if( !empty($_GET['area']) ) { $param.="area=".$_GET['area']."&"; } if( !empty($_GET['o_field']) ) { $param.="o_field=".$_GET['o_field']."&"; } if( !empty($_GET['o_ad']) ) { $param.="o_ad=".$_GET['o_ad']."&"; } // o param de pagnacao dos bairros esta no loop do select /* BUSCA --------------------------------------------------------------------- */ $sql_busca=""; // PALAVRA-CHAVE if ( !empty($_GET['codigo']) && is_numeric($_GET['codigo']) ) { die("&lt;script>window.location='detalhes.php?codigo=".$_GET['codigo']."'</script>"); } else if ( !empty($_GET['placa']) && is_numeric($_GET['placa']) ) { die("&lt;script>window.location='detalhes.php?codigo=".$_GET['placa']."'</script>"); } else { // CLASSIFICACAO if (!empty($_GET["finalidade"]) && $_GET["finalidade"]=='venda') { $sql_busca .= " AND INSTR(imo.STATUS,'VENDA')>0 "; } else if (!empty($_GET["finalidade"]) && $_GET["finalidade"]=='locacao') { $sql_busca .= " AND INSTR(imo.STATUS,'LOCA&#199;&#195;O')>0 "; } //else if (!empty($_GET["finalidade"]) && $_GET["finalidade"]=='vl') { $sql_busca .= " "; } // ESTAGIO OBRA if(!empty($_GET['estagio'])) { $vfiltros[] = array('estagio',$_GET['estagio']); } if ( !empty($_GET['estagio']) && $_GET['estagio']==2 ) { $sql_busca.=" AND imo.ESTAGIO_OBRA='Lan&#231;amento' OR imo.ESTAGIO_OBRA='Revenda'"; } if ( !empty($_GET['estagio']) && $_GET['estagio']==4 ) { $sql_busca.=" AND imo.ESTAGIO_OBRA='Pronto' OR imo.ESTAGIO_OBRA='Revenda' OR imo.ESTAGIO_OBRA='Lan&#231;amento'"; } // TIPO DE IMOVEL if ( !empty($_GET['tipo']) ) { $sql_busca.=" AND imo.CODIGO_CT=".$_GET['tipo']; $vfiltros[] = array('tipo',$_GET['tipo']); } // CIDADE if ( !empty($_GET['busca_cidade']) ) { $sql_busca.=" AND imo.cidade='".urldecode($_GET['busca_cidade'])."' "; $vfiltros[] = array('busca_cidade',$_GET['busca_cidade']); } // AREA if ( !empty($_GET['area']) ) { $v_area = split('-',$_GET['area']); $sql_busca.=" AND (imo.AREA_PRIVATIVA>=".$v_area[0]." and imo.AREA_PRIVATIVA<=".$v_area[1].") "; $vfiltros[] = array('area',$_GET['area']); } // pre&#231;o if ( !empty($_GET['pre&#231;o']) ) { $v_preco = split('-',$_GET['pre&#231;o']); $sql_busca.=" AND (imo.VLR_VENDA>=".($v_preco[0]*1000)." and imo.VLR_VENDA<=".($v_preco[1]*1000).") "; $vfiltros[] = array('pre&#231;o',$_GET['pre&#231;o']); } // pre&#231;o if ( !empty($_GET['preco2']) ) { $v_preco = split('-',$_GET['preco2']); $sql_busca.=" AND (imo.VALOR_ALUGUEL>=".($v_preco[0])." and imo.VALOR_ALUGUEL<=".($v_preco[1]).") "; $vfiltros[] = array('preco2',$_GET['preco2']); } // FAVORITOS if ( !empty($_GET['favoritos']) ) { $sqlfav = ""; if ( isset($_COOKIE['favoritos']) ) { $cods=split(",",$_COOKIE['favoritos']); //print_r($cods); $sqlfav .=" AND ("; for($i=count($cods)-1;$i>=0;$i--){ if(trim($cods[$i])!='') { $sqlfav .= " imo.CODIGO=".$cods[$i]; if(count($cods)>0) { $sqlfav .= " OR "; } } } $sqlfav = rtrim($sqlfav, "OR "); $sqlfav .=" )"; //echo $sqlfav; } $sql_busca .= $sqlfav; if (str_replace(" ","",$sqlfav)!="AND()") $sql_busca .= $sqlfav; else $sql_busca = ' AND 1=2 '; } // BAIRROS SELECIONADOS if ( !empty($_GET['bairros']) ) { $total = count($_GET['bairros']); $sql_busca .= " AND ("; foreach ($_GET['bairros'] as $value) { $sql_busca .= " imo.BAIRRO IN ('". urldecode($value) ."') "; $total--; if ($total!=0) { $sql_busca .= " OR "; } //PAGINACAO $param.="bairros[]=".urlencode($value)."&"; //filtros $vfiltros[] = array('bairros[]',$value); } $sql_busca .= " ) "; } // DORM if (!empty($_GET['dormitorio']) && $_GET['dormitorio']==1) { $sql_busca .= " AND imo.DORMITORIO=1"; } if (!empty($_GET['dormitorio']) && $_GET['dormitorio']==2) { $sql_busca .= " AND imo.DORMITORIO=2"; } if (!empty($_GET['dormitorio']) && $_GET['dormitorio']==3) { $sql_busca .= " AND imo.DORMITORIO=3"; } if (!empty($_GET['dormitorio']) && $_GET['dormitorio']==4) { $sql_busca .= " AND imo.DORMITORIO>=4"; } if (!empty($_GET['dormitorio'])) { $vfiltros[] = array('dormitorio',$_GET['dormitorio']); } // GARAGEM if (!empty($_GET['garagem']) && $_GET['garagem']==1) { $sql_busca .= " AND imo.QUANTITADE_GAR>=1"; } if (!empty($_GET['garagem']) && $_GET['garagem']==2) { $sql_busca .= " AND imo.QUANTITADE_GAR>=2"; } if (!empty($_GET['garagem']) && $_GET['garagem']==3) { $sql_busca .= " AND imo.QUANTITADE_GAR>=3"; } if (!empty($_GET['garagem']) && $_GET['garagem']==4) { $sql_busca .= " AND imo.QUANTITADE_GAR>=4"; } if (!empty($_GET['garagem'])) { $vfiltros[] = array('garagem',$_GET['garagem']); } // FAIXA DE PRE&#199;O SELECIONADA if( !empty($_GET['finalidade']) && $_GET['finalidade']=='locacao' ) { if (!empty($_GET['de2'])) { $sql_busca .= " AND imo.VALOR_ALUGUEL>=".$_GET['de2']." "; } if (!empty($_GET['ate2'])) { $sql_busca .= " AND imo.VALOR_ALUGUEL<=".$_GET['ate2']." "; } }else{ if (!empty($_GET['de1'])) { $sql_busca .= " AND imo.VLR_VENDA>=".$_GET['de1']." "; } if (!empty($_GET['ate1'])) { $sql_busca .= " AND imo.VLR_VENDA<=".$_GET['ate1']." "; } } } /* END BUSCA --------------------------------------------------------------------- */ /* ORDENAR OS RESULTADOS --------------------------------------------------------------------- */ if(isset($_GET["ordem"])) { $_SESSION["ordem"]==$_GET["ordem"] ? $_SESSION["ordem"] = $_SESSION["ordem"] : $_SESSION["ordem"] = $_GET["ordem"]; } elseif(!isset($_SESSION["ordem"])) { $_SESSION["ordem"] = "VLR_VENDA DESC, VALOR_ALUGUEL DESC"; } /* --------------------------------------------------------------------- */ $sql = "SELECT DISTINCT imo.PLACA, imo.CODIGO, imo.CODIGO_CT, cat.CATEGORIA, cat.GRUPO, imo.STATUS, imo.BAIRRO, imo.CIDADE, imo.DORMITORIO AS DORM, imo.ESTAGIO_OBRA, imo.SUITE AS SUITE, imo.QUANTITADE_GAR AS VAGA, imo.LANCAMENTO, imo.AREA_PRIVATIVA AS AREA, imo.AREA_TOTAL, imo.VLR_VENDA, imo.VALOR_ALUGUEL, imo.EMPREENDIMENTO FROM CADIMO imo LEFT JOIN CADCAT cat ON cat.CODIGO=imo.CODIGO_CT LEFT JOIN CADCLI cli ON cli.CODIGO_C=imo.CODIGO_C WHERE imo.VER_WEB='Sim' AND (imo.STATUS='VENDA' OR imo.STATUS='LOCA&#199;&#195;O') $sql_busca ORDER BY ".$_SESSION['ordem']." "; //echo $sql; $sql_limit = " LIMIT ".$comeca_em.",".$_SESSION['regs_pp']; $rst = mysql_query($sql) or die(mysql_error()); $total_reg = mysql_num_rows($rst); /* TITULO NAVEGADOR --------------------------------------------------------------------- */ $tit_browser = " "; $tit_h=""; if (!empty($_GET["finalidade"]) && $_GET["finalidade"]=='locacao') { $tit_browser .= 'Im&#243;veis para alugar ';} else if (!empty($_GET["finalidade"]) && $_GET["finalidade"]=='venda') { $tit_browser .= 'Im&#243;veis &#224; venda '; } else if (!empty($_GET["favoritos"]) ) { $tit_browser .= 'Im&#243;veis Favoritos '; } else if ( !empty($_GET['estagio']) && $_GET['estagio']==1 ) { $tit_browser .=" Entrega At&#233; 1 Ano "; } else if ( !empty($_GET['estagio']) && $_GET['estagio']==2 ) { $tit_browser .=" Lan&#231;amentos"; } else if ( !empty($_GET['estagio']) && $_GET['estagio']==3 ) { $tit_browser .=" Pr&#233;-Lan&#231;amentos"; } else if ( !empty($_GET['estagio']) && $_GET['estagio']==4 ) { $tit_browser .=" Prontos / Usados"; } else { $tit_browser .= 'Im&#243;veis '; } if (!empty($_GET["tipo"])) { $sqlc = mysql_query("SELECT CATEGORIA FROM CADCAT WHERE CODIGO=".$_GET["tipo"]); if(mysql_num_rows($sqlc)>0) { $st = mysql_fetch_array($sqlc); $tit_browser .=' '.Maiusculo($st["CATEGORIA"]); } } if (!empty($_GET["busca_cidade"])) { $tit_browser .=' em '.urldecode(Maiusculo($_GET["busca_cidade"])); } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <? include("inc/layout/meta.php"); ?> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <meta name="description" content="<?= $tit_browser; ?> - <?= CFG_TITLE ?>" /> <meta name="keywords" content="imobiliaria porto alegre, imoveis porto alegre, fael imoveis" /> <meta name="classification" content="imoveis , imobiliaria"> <title><?= $tit_browser; ?> - <?= CFG_TITLE; ?></title> <link href="inc/css/styles.css" rel="stylesheet" type="text/css" /> &lt;script type="text/javascript" src="inc/js/jquery.js"></script> &lt;script type="text/javascript" src="inc/js/jquery.ui.js"></script> &lt;script type="text/javascript" src="inc/js/jquery.cycle.js"></script> &lt;script type="text/javascript" src="inc/js/jquery.tooltip.js"></script> &lt;script type="text/javascript" src="inc/js/scripts.js"></script> &lt;script type="text/javascript" src="inc/js/validaform.js"></script> </head> <body> <div id="container"> <? include("inc/layout/header.php"); ?> <? include("inc/layout/busca.php"); ?> <? include("inc/layout/animacao.php"); ?> <div id="mainContent"> <div id="leftContent"> <? include("inc/layout/filtro.php"); ?> <? include("inc/layout/servicos.php"); ?> </div><!-- end #leftContent --> <div id="rightContent"> <h1><?php echo $tit_browser; ?></h1> <div class="paginacao"> <!--<p class="left">Total de im&#243;veis encontrados: <strong><?= $total_reg; ?></strong></p>--> <? if($total_reg>0) { ?> <select onchange="window.location='<?=current_page()?>?<?=$param?>ordem='+this.value"> <option value="">Ordenar por:</option> <optgroup label="Pre&#231;o"> <? if ($_GET['finalidade']=='locacao') { ?> <option value="VALOR_ALUGUEL ASC" <?= $_SESSION["ordem"]=="VALOR_ALUGUEL ASC" ? 'selected="selected"' : '' ?> >Menor Pre&#231;o</option> <option value="VALOR_ALUGUEL DESC" <?= $_SESSION["ordem"]=="VALOR_ALUGUEL DESC" ? 'selected="selected"' : '' ?>>Maior Pre&#231;o</option> <? } else { ?> <option value="VLR_VENDA ASC" <?= $_SESSION["ordem"]=="VLR_VENDA ASC" ? 'selected="selected"' : '' ?> >Menor Pre&#231;o</option> <option value="VLR_VENDA DESC" <?= $_SESSION["ordem"]=="VLR_VENDA DESC" ? 'selected="selected"' : '' ?>>Maior Pre&#231;o</option> <? } ?> </optgroup> <optgroup label="&#193;rea"> <option value="imo.AREA_TOTAL ASC" <?= $_SESSION["ordem"]=="imo.AREA_TOTAL ASC" ? 'selected="selected"' : '' ?>>Menor &#193;rea</option> <option value="imo.AREA_TOTAL DESC" <?= $_SESSION["ordem"]=="imo.AREA_TOTAL DESC" ? 'selected="selected"' : '' ?>>Maior &#193;rea</option> </optgroup> <optgroup label="Dormit&#243;rios"> <option value="imo.DORMITORIO ASC" <?= $_SESSION["ordem"]=="imo.DORMITORIO ASC" ? 'selected="selected"' : '' ?>>Menos Dormit&#243;rios</option> <option value="imo.DORMITORIO DESC" <?= $_SESSION["ordem"]=="imo.DORMITORIO DESC" ? 'selected="selected"' : '' ?>>Mais Dormit&#243;rios</option> </optgroup> </select> <? } ?> </div><!-- end .paginacao --> <div class="imoveis"> <? if($total_reg>0) { $i=0; $rs = mysql_query($sql." ".$sql_limit) or die(mysql_error()); while($imovel=mysql_fetch_array($rs)) { $i++; $quebra = ($i%2==0) ? ' quebra' : ''; include("inc/layout/box.php"); } }else if( !empty($_GET["favoritos"]) && $total_reg==0 ){ echo "<br />Voc&#234; n&#227;o possui im&#243;veis salvos como favorito. <br />"; }else{ echo "<br />N&#227;o existem im&#243;veis para o filtro selecionado. Refa&#231;a seus filtros e tente novamente.<br />"; } ?> </div><!-- end .imoveis --> <? if($total_reg>6) { ?> <div class="paginacao paginacao-bottom"> <!--<p class="left">Total de im&#243;veis encontrados: <strong><?= $total_reg; ?></strong></p>--> <p class="right"><?= escreve_paginacao($param,$pg,$_SESSION['regs_pp'],$total_reg); ?></p> </div><!-- end .paginacao --> <? } ?> </div><!-- end #rightContent --> </div><!-- end #mainContent --> </div><!-- end #container --> <? include("inc/layout/footer.php"); ?> </body> </html> Se alguém puder me ajudar ficarei muito agradecido. Obrigado a todos.
×
×
  • Criar Novo...