Php - Testo ripetuto nel Form ? parte il messaggio

  • Creatore Discussione Creatore Discussione Sector
  • Data di inizio Data di inizio

Sector

Nuovo Utente
18 Mar 2009
26
0
0
Salve a tutti ho un problema con un Form di ricerca , mi spiego meglio :

Digitando nel Form il titolo di un articolo il database restituirà ovviamente il testo relativo .....

Quello che dovrei fare e aggiungere un messaggio del tipo " Hai già ricercato questo titolo...

nel caso in cui la ricerca venga ripetuta , ossia se l'utente digita a distanza di poco tempo la stessa frase

Ovviamente il testo trovato nel database verrebbe visualizzato comunque

Un amico mi ha suggerito di usare i cookie ed e quello che vorrei fare , avreste qualche suggerimento pratico da darmi ?


Posto il codice :

PHP:
<?php
include("open.php");
$chiave=$_REQUEST['chiave'];  
top();
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file open.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$keys = explode (",", $chiave);
$query = "";
reset ($keys);
while (list(,$parola) = each ($keys))
{ $parola = trim($parola);
if ($parola != "")
$query .= "titolo = '$parola' OR testo = '$parola' OR autore = '$parola' OR ";
}
$query .= " 0";
$query = "SELECT id, testo, data FROM news WHERE " . $query;
$result = mysql_query($query, $db);
if (mysql_num_rows($result)==0) {
die ("Articolo non presente nel database");
}
else 
while ($row = mysql_fetch_array($result))
{
$data = date("",$row['data']);
$testo = $row['testo'];
echo
"<a&nbsp&nbsp</a><br>";      
echo "<a> $data &nbsp $testo </a><br>";     
}
mysql_close($db);
foot();
?>
 
prova così, prima ti crei il coockie:
PHP:
<?php
$key = $_REQUEST['chiave'];
setcookie("NomeCookie", $key);
setcookie("NomeCookie", $key, time()+3600);
?>
poi effettui il controllo
PHP:
<?php
if ( (isset($_COOKIE['NomeCookie'])) && ($_COOKIE['NomeCookie']==$_REQUEST['chiave']) ) {
     echo "Hai già ricercato questo titolo... <br />\n";
    }
?>
naturalmente, visto che le ricerche possono essere più di una dovrai creare coockies con nomi diversi.
 
prova così, prima ti crei il coockie:


Ciao Eliox ti ringrazio intanto per il suggerimento che mi hai dato , siccome non ho mai avuto a che fare con i cookie potresti spiegarmi per favore il funzionamento del codice che mi hai postato ?

Per esempio LA VARIABILE $key e quella del mio codice ?


naturalmente, visto che le ricerche possono essere più di una dovrai creare coockies con nomi diversi.

Perchè più cookie con nomi diversi ?

Inoltre in quale punto dovrei inserire il codice ?


Ciao e ancora Grazie !!



:byebye:
 
Ultima modifica:

Discussioni simili