Limitación de consultas en MySQL para un buscador de clasificados

  • Autor Autor blogers
  • Fecha de inicio Fecha de inicio
B

blogers

Pi
SEO
Hola tengo un buscador de clasificados

Me armaron este codigo pero como ya no tengo plata mas la que mi jefa me dio para invertir en un presupuesto, vengo a pedirles una ayuda

$pages = mysql_fetch_assoc($peig = mysql_query('SELECT COUNT(codigo) AS total '.$cueri = ' FROM '._table_.' WHERE MATCH(title) AGAINST(\''.mysql_real_escape_string($querys).'\' ) ORDER BY death DESC'));

Como hacer que no busque en toda la tabla y se vuelva lento el script y mysql si no que busque en los ultimos 1000 registros aqui ya puse el orden ORDER BY death DESC hace que busque en los ultimos nuvos registros pero como hacer la limitacion para que no busque en toda la tabal solo que busque en los ultimos 1000 registros por que la paginacion es de 10 listados x100 pagina.

se los agradecere si me ayudan ando navegando y picando piedra con php
 
Limit 0,1000
 

$pages = mysql_fetch_assoc($peig = mysql_query('SELECT COUNT(codigo) AS total '.$cueri = ' FROM '._table_.' WHERE MATCH(title) AGAINST(\''.mysql_real_escape_string($querys).'\' ) ORDER BY death DESC'));


en que parte del codigo debo de insertar Limit 0,1000
 
$pages = mysql_fetch_assoc($peig = mysql_query('SELECT COUNT(codigo) AS total '.$cueri = ' FROM '._table_.' WHERE MATCH(title) AGAINST(\''.mysql_real_escape_string($querys).'\' ) ORDER BY death DESC'));


en que parte del codigo debo de insertar Limit 0,1000

Insertar CODE, HTML o PHP:
$pages = mysql_fetch_assoc($peig = mysql_query('SELECT COUNT(codigo) AS total '.$cueri = ' FROM '._table_.' WHERE MATCH(title) AGAINST(\''.mysql_real_escape_string($querys).'\' ) ORDER BY death DESC LIMIT 0,1000'));

SQL Limit - MySQL Limit - SQL Limit Results
 
Nose men por eso pido ayuda

Insertar CODE, HTML o PHP:
$pages = mysql_fetch_assoc(mysql_query("SELECT COUNT(codigo) AS total ".$cueri." FROM "._table_." WHERE MATCH(title) AGAINST('".mysql_real_escape_string($querys)."' ) ORDER BY death DESC LIMIT 0,1000"));

Por otro lado: _table_ es una variable definida??¿¿ porke sino le falta el $

Por otro lado tu consulta es mal armada... tiene errores... por eso se muere y ya te he dicho antes... ponele la opcion de mostrar errores al php sino una pagina en blanco es de adivinos.
 
asi esta la funcion

function parse_bd($countrySelect, $query, $jobLocation, $max)
{
global $lang, $jobLocation, $jobSelect, $countrySelect, $keyword, $refineKeyword;
# // \\ #
$jobLocation = trim($jobLocation);
$query = trim($query);
//
$querys = isset($jobLocation) ? isset($query) ? $query.' ' .$jobLocation : $jobLocation : $query;



$pages = mysql_fetch_assoc($peig = mysql_query('SELECT COUNT(codigo) AS total '.$cueri = ' FROM '._table_.' WHERE MATCH(title) AGAINST(\''.mysql_real_escape_string($querys).'\' ) ORDER BY death DESC'));


if($pages['total'] == 0) {return 'Empty';} else {
//
$data['pages'] = paginacion($pages['total'], 11);
if($data['pages']['limite'] == 1) {return 'Nada';}
//
echo str_replace(array('{total}', '{page}', '{totalp}'), array($pages['total'], $data['pages']['page'], $data['pages']['totalp']), $lang['busquedas_encontradas']);
//echo 'Se han encontrado '.$pages['total'].' resultados - Página '.$data['pages']['page'].' de '.$data['pages']['totalp'];
//
//register_mysearches($query, $jobLocation, $jobSelect, $pages['total']);
//
$query = mysql_query($f = 'SELECT * '.$cueri.' LIMIT '.$data['pages']['limit']);
while($data['info'] = mysql_fetch_assoc($query))
{
$descc = substr(trim($data['info']['description']), 0, 3);
if($descc == 'JoS' || empty($data['info']['description']))
{
$extrade = 'rel="nofollow" target="_blank"';
$link_new_data = $data['info']['link'];
}
//
$slip = ($descc == 'JoS') ? 3 : 0;
$data['info']['description'] = substr(strip_tags($data['info']['description']), $slip, 400).'...';
//
include('layout/search-results.php');
unset($link_new_data, $extrade);
//
++$i;
}
//
$url = _siteurl.'/search-jobs.php?seo_url1='.$lang['seo_url1'].'&jobLocation='.$jobLocation.'&jobSelect='.$jobSelect.'&countrySelect='.$countrySelect.'&keyword='.$keyword.'&workExp='.$jobtype.'&refineKeyword='.$refineKeyword;
//--\\
if($data['pages']['prev'] > 0) echo '<a href="'.$url.'&page='.$data['pages']['prev'].'">'.$lang['busquedas_paginador2'].'</a> &nbsp; ';
if(mysql_num_rows($query) > 10 && $data['pages']['next'] <= 100) echo '<a href="'.$url.'&page='.$data['pages']['next'].'">'.$lang['busquedas_paginador'].'</a>';

}
}



function paginacion($total, $max = 10){
// PÁGINA ACTUAL
$pages['page'] = empty($_GET['page']) ? 1 : abs((int)$_GET['page']);
// Nº PAGINAS
//fixed by Cicklow
$tmp_p = ceil($total / $max);
$pages['totalp'] = iff($tmp_p>100,100,$tmp_p);
// ANTERIOR
$pages['prev'] = ($pages['page'] > 0) ? $pages['page'] - 1 : 0;
// SIGUIENTE
$pages['next'] = ($next <= $pages['totalp']) ? $pages['page'] + 1 : 0;
// LIMITE BD
$pages['limit'] = (($pages['page'] - 1) * $max).','.$max;
//fixed by Cicklow
$pages['limite'] = 0;
if($pages['limit']>1089){
$pages['limite'] = 1;
$pages['limit'] = 1089;
$pages['totalp'] = 100;
$pages['page'] = 100;
}
return $pages;
}

function iff($A,$B,$C){
if($A) return $B; else return $C;
}


Insertar CODE, HTML o PHP:
$pages = mysql_fetch_assoc(mysql_query("SELECT COUNT(codigo) AS total ".$cueri." FROM "._table_." WHERE MATCH(title) AGAINST('".mysql_real_escape_string($querys)."' ) ORDER BY death DESC LIMIT 0,1000"));

Por otro lado: _table_ es una variable definida??¿¿ porke sino le falta el $

Por otro lado tu consulta es mal armada... tiene errores... por eso se muere y ya te he dicho antes... ponele la opcion de mostrar errores al php sino una pagina en blanco es de adivinos.
 
$pages = mysql_fetch_assoc($peig = mysql_query('SELECT COUNT(codigo) AS total '.$cueri = ' FROM '._table_.' WHERE MATCH(title) AGAINST(\''.mysql_real_escape_string($querys).'\' ) ORDER BY death DESC'));
 
ese es tu problema... en uno de mis post anteriores te lo arregle!
HTML:
$pages = mysql_fetch_assoc(mysql_query("SELECT COUNT(codigo) AS total ".$cueri." FROM "._table_." WHERE MATCH(title) AGAINST('".mysql_real_escape_string($querys)."' ) ORDER BY death DESC LIMIT 0,1000"));

Lo puse pero vuelve a ponerse en blanco las paginas
 
HTML:
$pages = mysql_fetch_assoc(mysql_query("SELECT COUNT(codigo) AS total ".$cueri." FROM "._table_." WHERE MATCH(title) AGAINST('".mysql_real_escape_string($querys)."' ) ORDER BY death DESC LIMIT 0,1000"));

Lo puse pero vuelve a ponerse en blanco las paginas

habilita los errores de php... no somos adivinos!
 
[29-Jul-2013 14:49:03 America/New_York] PHP Fatal error: Call to undefined function paginacion() in /home/joboseek/public_html/parse.php on line 251

te dice ke la funcion paginacion no existe.
 
configura php.ini para que muestre errores.
 
Atrás
Arriba