Ciao a tutti ragazzi
oggi mi sono messo a creare un motore di ricerca (file .php) per una tabella costituita da queste colonne (id_iscritto, nome, cognome, indirizzo, email. provincia, dataisc ).
Ho pensato poi di creare un form di ricerca che faccia comparire al di sotto una finestra con i possibili nomi trovati.
Ci riesco e funziona anche bene, infatti se cancello ciò che ho scritto nel form, scompare la tendina ed anche il testo del file .php.
Se volessi però rendere i risultati presenti nella tendina, dei risultati cliccabili per far comparire tutti gli altri dati del nome trovato, cosa dovrei fare?
oggi mi sono messo a creare un motore di ricerca (file .php) per una tabella costituita da queste colonne (id_iscritto, nome, cognome, indirizzo, email. provincia, dataisc ).
PHP:
<?php
require_once('configurazione_credenziali_esterno.php');
$link = @mysqli_connect(DB_HOST, DB_USERN, DB_PSW) or die("Errore connessione: ". mysqli_connect_error());
$dbw = @mysqli_select_db($link, DB_PROVA) or die("Errore apertura database: " . mysqli_error($link));
$parola=$_POST["n"];
if($parola){
$strsql= "SELECT * FROM iscritti WHERE nome LIKE '%$parola%' or cognome LIKE '%$parola%'";
$rs = @mysqli_query($link, $strsql) or die("Errore query database: " . mysqli_error($link));
while ($riga = mysqli_fetch_array($rs)) {
$str_id = $riga['id_iscritto'];
$str_nome = $riga['nome'];
$str_cogn = $riga['cognome'];
echo "Riga: $str_id -> Nome: $str_nome - Cognome: $str_cogn <br>";
?>
<?php
}
}
?>
Ho pensato poi di creare un form di ricerca che faccia comparire al di sotto una finestra con i possibili nomi trovati.
Ci riesco e funziona anche bene, infatti se cancello ciò che ho scritto nel form, scompare la tendina ed anche il testo del file .php.
Se volessi però rendere i risultati presenti nella tendina, dei risultati cliccabili per far comparire tutti gli altri dati del nome trovato, cosa dovrei fare?
Codice:
$("li.last").keyup(function(event){ //quando avviene evento rilascio tasto fai questa funzione
event.preventDefault();//blocco la propagazione del l'evento
$('#login')
.css({ //posiziono il modulo
'top' : '55px',
'left' : '450px'
})
.fadeIn(500);
var par = $("#parola").val();//preleva l'attributo value cioè quello che digita l'utente
$.post("leggere-iscritti.php", //invio richiesta a questo file.php
{n:par}, //passandoci questi dati prelevati poco prima
//n appena inventata, par preso poco prima
/*questa funzione ci dice cosa vogliamo fare con la risposta che
ci ha inviato il server e che sarà contenuta in data*/
function(data){
console.log(data);
link = "<a src=\"" + data + "\">"+ data +"</a>";
messaggio = "<p>" + link + "</p>";
$("div#sfondologin").html(link);
// console.log(data);
//$("div#sfondologin").html(data); //inserimeno nel div con id sfondologin
if(data==0){$('#login').toggle();} //se non c'è nulla scritto elimina tendina
});
return false;
});
</script>
<div id="main">
<div id="maintop">
<nav>
<ul>
<li><a href="">link1</a></li>
<li><a href="">link2</a></li>
<li><a href="">link3</a></li>
<li class="last">Cerca:<input id="parola" type="text" name="parola"></li>
</ul>
</nav>
<div id="login">
<div id="sfondologin">
<!-- <form method="post" action="">
<label for="username">Username</label><input type="text" name="username">
<label for="password">Password</label><input type="password" name="password">
<input type="submit" name="Invia">
</form>-->
</div>
</div>
</div>
<footer></footer>
</div>
</div>
</body>
</html>
Ultima modifica: