script attivo di annunci ampliare motore di ricerca per regione o citta consigli

gazzol

Nuovo Utente
24 Mar 2010
4
0
0
Buongiorno,
Ho un script di annunci attivo ha il motore di ricerca ma solo per categorie ed prezzi io volevo inserire quello per le regioni e provincie ma mi risulta più difficile del solito chiedo consigli a persone esperte sono arrivato al punto anche di una piccola collaborazione come secondo lavoro per aiutarmi a finire questo script, ci ho lavorato molto e ora mi manca l'ultima modifica, in pratica devo andare a prendere i dati dal database delle regioni la tabella si chiama country e poi mi manca questo passaggio devo fare in modo che mi cerchi la parola che seleziono nel menu a tendina nel database alla tabella classified titolo AddressRegion.
Questa è la prima parte:
PHP:
    <select name="Address_post_Country" sch_req="1" sch_msg="Country" >
                                                                                <option value="">Regione</option>
                                                                                <?php
                                                                                    $countries = $data->select ( "Country" , "*" , NULL , 0 , 500 , " CountryName" ) ;
                                                                                    if ( ! empty ( $countries ) )
                                                                                        foreach ( $countries as $country )
                                                                                            if ( $classified["AddressCountry"] == $country["CountryName"] )
                                                                                                echo "<option value='".$country["CountryName"]."' selected='selected'>".$country["CountryName"]."</option>" ;
                                                                                            else
                                                                                                echo "<option value='".$country["CountryName"]."'>".$country["CountryName"]."</option>" ;
                                                                                ?>
Qualcuno che mi può schiarire due idea su come fare.
 
Querry di ricerca

Mi aiutate a creare il codice per la ricerca nel database, nella parte sopra il codice php mi permette di andare a prendere tutti i nomi regioni nella cartella database nome country e creare un menu a tendina dove selezione le regioni. ora devo creare la querry che ogni nome di regione che seleziono mi vada a cercare la parola esatta nella cartella database classified dove ci sono tutti gli annunci.
 
struttura tabelle

Questa è la tabella country dove riesco già a visualizzare con il codice sopra
HTML:
table Country
(
	CountryID int primary key auto_increment,
	CountryName varchar(200),
	Abbr varchar(200)
questa è quella per la quale devo fare in modo che mi ricerce gli annunci con la regione che seleziono nella ricerca precisamente AddressRegion
HTML:
create table Classified
(
	AdID int primary key auto_increment,
	AdTitle varchar(100),
	PriceAlternative enum('1','2','3','4','5'),
	Price decimal(10,2) default 0,
	Description text,
	EmailAddress varchar(200),
	AddressStreet varchar(70),
	AddressCity varchar(70),
	AddressRegion varchar(70),
	AddressZip varchar(10),
	AddressCountry varchar(100),

	GoogleLatitude varchar(50),
	GoogleLongitude varchar(50),
	
	IsOffer bool default 0,
	IsActive bool default 0,
	IsFeatured bool,
	IsPosted bool default 0,
	PaymentStatus enum ( 'UnPaid' , 'Cancelled' , 'Paid' ) default 'UnPaid',

	SearchKeywords text,

	DateAdded timestamp default now(),
	Views int default 0,
	Replies int default 0,
	CategoryStack varchar(100) default null,

	CategoryID int,
	RegionID int,
	AccountID int,

	foreign key (AccountID) references Account (AccountID),
	foreign key (RegionID) references Region (RegionID),
	foreign key (CategoryID) references Category (CategoryID)
);
questo è il file search.php il motore di ricerca interno delle categorie e prezzi passa tutto per questo file premendo il tasto cerca
PHP:
<?php
	
	if ( $_POST )
	{
		$qstr = "" ;
		if ( intval ( $_POST["CatId"] ) > 0 )
		{
			$qstr .= "category/" ;
			$qstr .= get_sef_url ( intval ( $_POST["CatId"] ) , "Category" ) ."/" ;
		}
		else
			$qstr .= "c-BrowseClassified/" ;
			
		
		if ( $_POST["Keyword"] != "" )
			$qstr .= "q:".str_replace ( "|" , "", $_POST["Keyword"] )."|" ;
		if ( floatval ( $_POST["minPrice"] ) > 0 )
			$qstr .= "p1:".str_replace ( "|" , "", floatval ( $_POST["minPrice"] ) )."|" ;
		if ( floatval ( $_POST["maxPrice"] ) > floatval ( $_POST["minPrice"] ) )
			$qstr .= "p2:".str_replace ( "|" , "", floatval ( $_POST["maxPrice"] ) )."|" ;
		$qstr .= "p:0|gal:0|typ:|" ;
		
		if ( ! empty ( $_POST["sortBy"] ) )
		{
			switch ( $_POST["sortBy"] )
			{
				case "dasc" :
				case "ddesc" :
				case "plow" :
				case "phi" :
					$qstr .= "ord:".$_POST["sortBy"] ;
					break;
				default:
					$qstr .= "ord:ddesc" ;
					break;
			}
		}

	}
	
	header ( "location:".base_url."$qstr/" ) ;
	exit ( ) ;


?>
Se ti serve altro potrei anche farti visualizzare la struttura php come è costruita del sito per capirci meglio per il momento grazie, ho messo un menu a tendina dove ci sono le regioni tramite la tabella country ora dovrei impostare query per ricerca annunci di quella determinata regione nel database tabella classified.
 

Discussioni simili