Cari amici,
ho provato ad implrmentare un motore di ricerca in una pagina php ma la ricerca non viene ben effettuata perchè mi stampa tutti i campi e non si trova con le variabili
Questo è il codice inserito:
codice:
<form action='cerca.php?ricerca=ok' method='POST'> Ricerca
<input type='text' name='cerca'>
<input type='submit' value='Invia'> </form> </form> <?php // connettiamoci il nostro database $db_host = "localhost"; $db_user = "root"; $db_password = "root"; $db_name = "gbook"; //connetto il database $db = mysql_connect($db_host, $db_user, $db_password) or die ('Errore durante la connessione'); mysql_select_db($db_name, $db) or die ('Errore durante la selezione del db'); // recuperiamo il valore ricerca inviato con get $ricerca = $_GET['ricerca']; // vediamo se è stato inviato, e quindi uguale a ok if ( $ricerca == 'ok' ) { // recuperiamo ora cerca inviato con post $cerca = $_POST['cerca']; // vediamo se è stato compilato il campo if ( $cerca == TRUE && $cerca != "" ) { // ora vediamo se supera i tre caratteri if ( strlen($cerca) >= 1 ) { // ora depuriamo la stringa da cercare sul database $cerca = mysql_escape_string(stripslashes($cerca)); // ora possiamo effettuare la nostra ricerca sul db, state attenti alla sintassi $query = "SELECT * FROM accelgbook WHERE targaauto LIKE '%$circa%'OR piazzavia LIKE '%$circa%' OR mese LIKE '%$circa%' OR giorno LIKE '%$circa%'OR anno LIKE '%$circa%'OR ora LIKE '%$circa%'OR minuti LIKE '%$circa%'OR addetto LIKE '%$circa%'"; $risultato = mysql_query($query) or die (mysql_error()); $risposta = mysql_query($query) or die ("Utilizza termini più specifici!"); $dentro_la_query= mysql_fetch_assoc($risposta); if ( $dentro_la_query == TRUE ) { while($row= mysql_fetch_assoc($risultato)) { $targaauto = $row['targaauto']; $piazzavia = $row['piazzavia']; $mese = $row['mese']; $giorno = $row['giorno']; $anno = $row['anno']; $ora = $row['ora']; $minuti = $row['minuti']; $addetto = $row['addetto']; $id = $row['id']; // stampiamo i nostri dati echo "Targa Auto: $targaauto
"; echo "piazzavia : $piazzavia
"; echo "Mese: $mese
"; echo "Giorno : $giorno
"; echo "Anno : $Anno
"; echo "Ora : $Ora
"; echo "Minuti : $minuti
"; echo "Addetto : $addetto
"; } } else { echo "Nessun temine alla ricerca trovato"; } } else { echo "Devi inserire almeno 3 caratteri"; } } else { echo "Non hai compilato il modulo ricerca"; } } ?>
I dati inseriti nel database sono questi:
codice:
CREATE TABLE `accelgbook` ( `id` int(11) NOT NULL AUTO_INCREMENT, `targaauto` text NOT NULL, `tipoveicolo` text NOT NULL, `piazzavia` text NOT NULL, `mese` text NOT NULL, `giorno` text NOT NULL, `anno` text NOT NULL, `ora` text NOT NULL, `minuti` text NOT NULL, `addetto` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=280539 ;
Sono un pivello...è l mia prima pagina php