带过滤器的PHP搜索引擎

时间:2012-02-15 22:37:12

标签: php search-engine

我正在尝试构建一个搜索网站,您可以在其中优化您的搜索,但我无法通过新的$ get值...我将链接我所获得的内容和内容的示例一世 如果有任何帮助我很难实现。

我想要实现什么? http://www.pac.com.ve/index.php?option=com_jumi&fileid=9&Itemid=119&keyword=farmacia

我得到了什么? http://www.laguiadelveterinario.com/test/test_array.php?category=cat2

当我点击左侧菜单时,我无法找到更新GET变量的方法。

2 个答案:

答案 0 :(得分:0)

是的,我一直在寻找2个选项:

1.- $ _Get方法通过url传递变量

2.-创建一个季节并在用户点击差异选项时添加值。

目前我正在使用get方法,但我无法找到如何在点击删除过滤器链接时删除获取值....所以我在浏览并找出我将要去的季节方法

答案 1 :(得分:0)

我提出了这个解决方案...我通过Get方法传递变量,工作得很好但是我在URL中得到空值...

您可以在此处查看工作示例:http://www.laguiadelveterinario.com/test/test_array.php?category=cat3

注1:在顶级lvl菜单中,只有(clasificados)上的项目才是最右边的按钮...只有一些数据(buscando hogar,enrazate,se busca)

注意2:左侧菜单显示不同的子类别(用户将点击以优化搜索)仍然是静态的,当点击菜单上的内容时它不会刷新...

注3:我现在只试图删除状态过滤器以测试代码......

问题:我正朝着正确的方向前进吗?我可以动态添加/删除不同的变量吗?我应该使用数组吗?谢谢你能帮助我的任何帮助。

现在粘贴代码:

<?php
$cat = $_GET['category'];

$estado = $_GET['estado'];
$tmascota = $_GET['tmascota'];
$raza = $_GET['raza'];

?>
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Test Array</title>
<link rel="stylesheet" type="text/css" href="css/pro_drop_1.css" />
<style>
body{margin:40px;}

</style>
</head>

<body>

<div style=" clear:left; padding:40px;">
<?php include 'menu.php'; ?>
</div>


<div style="float:left; border:1px solid #999; padding:30px;"><h1>Por categorias: </h1>
<?php
include 'conexion.php';
include('ps_pagination.php');

    echo "<b>Por Estados: </b><br />";
        $citys = mysql_query("SELECT estado, COUNT(name) FROM clasificados WHERE     clasificados.category = '$cat' GROUP BY estado");
        while ($row = mysql_fetch_array($citys)) {
            echo "<a href=\"test_array.php?category=".$cat."&estado=". $row['estado'] ."&tmascota=".$tmascota."&raza=".$raza."\"> Hay " . $row['COUNT(name)'] ." en ". $row['estado'] . "</a><br />\n";
        }
    mysql_free_result($citys);

echo "<b>Por Tipos de Mascotas: </b><br />";
    $mascotas = mysql_query("SELECT tmascota, COUNT(name) FROM clasificados WHERE clasificados.category = '$cat' GROUP BY tmascota");
    while ($row = mysql_fetch_array($mascotas)) {
        echo "<a href=\"test_array.php?category=".$cat."&estado=". $estado ."&tmascota=". $row['tmascota'] ."&raza=".$raza."\"> Hay " . $row['COUNT(name)'] ." en ". $row['tmascota'] . "</a><br />\n";
        /*echo "<a href=\"getsubcat.php?category=$cat&estado=". $row['estado'] ."\"> Hay " . $row['COUNT(name)'] ." en ". $row['estado'] . "</a><br />\n";*/
    }
    mysql_free_result($mascotas);

echo "<b>Por Razas: </b><br />";
    $qryraza = mysql_query("SELECT raza, COUNT(name) FROM clasificados WHERE clasificados.category = '$cat' GROUP BY raza");
    while ($row = mysql_fetch_array($qryraza)) {
        echo "<a href=\"test_array.php?category=".$cat."&estado=". $estado ."&tmascota=". $tmascota ."&raza=". $row['raza'] ."\"> Hay " . $row['COUNT(name)'] ." en ". $row['raza'] . "</a><br />\n";
        }       }
    mysql_free_result($qryraza);

    echo "<p><a href=\"test_array.php?category=".$cat."&estado=&tmascota=". $tmascota ."&raza=".$raza."\">remove (estado) filter</a></p>";        

?></div><?

$sql = "SELECT * FROM clasificados WHERE 1=1";

if(isset ($cat))
{
$sql .= " AND category='$cat'";
}

if(isset ($cat) && ($estado))
{
$sql .= " AND clasificados.category='$cat' AND clasificados.estado='$estado'";
}
if(isset ($cat) && ($tmascota))
{
$sql .= " AND clasificados.category='$cat' AND clasificados.tmascota='$tmascota'";
}
if(isset ($cat) && ($raza))
{
$sql .= " AND clasificados.category='$cat' AND clasificados.raza='$raza'";
}
$sql .= " ORDER BY clasificados.id DESC";

$counttotal = mysql_query($sql) or die(mysql_error()) ;
$counttotal = mysql_num_rows($counttotal); 

$pager = new PS_Pagination($conn, $sql, 6, 5, "category=$cat");
$pager->setDebug(true);

$rs = $pager->paginate();
if(!$rs) die(mysql_error());

?>
<div style="float:left;border:1px solid #999; padding:30px;"><h1>Resultados <? echo   $counttotal; ?></h1>
<?

while($row = mysql_fetch_assoc($rs)) {

echo "<div style=\"clear:left;border:1px solid #999; padding:30px;\">Title: ".$row['title']."<br />".
"Estado: ".$row['estado']."<br />".
"Tipo Mascota: ".$row['tmascota']."<br />".
"Raza: ".$row['raza']."<br />".
"</div>";


}

?>
</div>

<div style="float:left;border:1px solid #999; padding:30px;"><h1>Print Variables</h1><?
echo "categoria: ".$cat."<br />";
echo "estado: ".$estado."<br />";
echo "tmascota: ".$tmascota."<br />";
echo "raza: ".$raza."<br />";


?>


</body>