[PHP] select riempimento automatico

solari77

Utente Attivo
6 Ott 2016
119
1
18
Ciao a tutti,dovrei realizzare una form con un input type=text. avrei la necessità di ottenere il riempimento automatico attraverso dei valori prelevati dal database.In pratica scrivendo le prime lettere in automatico mi dovrebbe filtrare tutti i campi corrispondenti.
Qualcuno ha dei suggerimenti su come realizzarlo?
Grazie
 
Se quest'esempio html5 ( non dinamico ) può andarti bene, puoi usarlo semplicemente per creare quello che vuoi fare rendendo dinamici gli option con un ciclo da db..
HTML:
<form name="test" method="post" action="...">
  [...]
  <label>Stato d'animo:
    <input type="text" name="mood" placeholder="felice, triste, incuriosito, ..." list="stato-danimo">
    <datalist id="stato-danimo">
      <option value="triste">
      <option value="annoiato">
      <option value="curioso">
      <option value="felice">
      <option value="entusiasta!">
    </datalist>
  </label>
  [...]
  <input type="reset"  value="Resetta il form">
  <input type="submit" value="Invia il commento">
</form>

Arrivato tardi.. Non avevo visto la risposta precedente, che mi sembra anche più completa visto che ha anche il label="Forum" ecc..
 
Grazie ad entrambi per le risposte. Ho seguito la guida indicata da Borgo Italia e funziona alla perfezione.
 
  • Like
Reactions: otto9due
Allora ho bisogno di un tuo consiglio. Io devo estrarre da un db di circa 500 valori.Quale mi consigli. Se la risposta è la prima soluzione,fino a quanti valori del DB posso utilizzare la prima soluzione ?
 
Ultima modifica:
ciao
ti conviene fare delle prove per vedere quale è più veloce, dall'esempio di mrwm dovresti fare qualcosa di simile
PHP:
<input type="url" name="mappa" list="url_mrw">
<datalist id="url_mrw">
<?php
//dati connessione
//metto dei nomi a caso
$query=mysqli_query($conn,"SELECT campo_1, campo_2 FROM tabella ORDER BY campo_1");
while($riga=mysqli_assoc($query)){
    $etichetta=$riga['campo_1'];
    $valore=$riga['campo_2'];
    echo "<option label=\"$etichetta\" value=\"$valore\">";
}
?>
</datalist>
certo che dovendo estrarre 500 valori forse il metodo con jquery è meglio
 

Discussioni simili