Autocomplete Jquery php mysql su più campi inpunts

andrea.peo

Nuovo Utente
20 Lug 2013
11
0
0
Un buongiorno a tutti
Vorrei esporvi il problema che sono incappato.. :dipser:
Vorrei fare autocomplete su diversi campi input usando jquery, php e mysql.
Fino ad ora sono riuscito a farlo su un campo "nome", ma con la mia poca conoscenza di java, non riesco ad uscirne.
Vi posto i codice che sto usando per il campo "nome".
File insert.php
Java:
Codice:
<script type="text/javascript" charset="utf-8">
$().ready(function(){
    $('#NomeSearch').autocomplete({
      source: './include/search.php',
      minLength:2,  
      });
     })
</script>
Html:
PHP:
echo "<center><form method=\"post\" action=\"$url\">";
echo "<p><br><font class=\"scritta\">Inserire un nome :</font>&nbsp;&nbsp;&nbsp;<input type=\"text\" id=\"NomeSearch\" name=\"nome\" value=\"$nome\"></p>";
echo "<p><br><font class=\"scritta\">Inserire un cognome :</font>&nbsp;&nbsp;&nbsp;<input type=\"text\" id=\"ConSearch\" name=\"cognome\" value=\"$cognome\"></p>";
echo "<p><br><font class=\"scritta\">Insérer un num. Tel. :</font>&nbsp;&nbsp;&nbsp;<input type=\"text\" id=\"TelSearch\" name=\"tel\" value=\"$tel\"></p></form></p></center>";

File search.php
PHP:
error_reporting(0);
include ("./connessione.php");
$return_arr=array();
$nome=$_GET['term'];
$sql='select DISTINCT * from t_nominativi where nome like "'.mysql_real_escape_string($nome).'%" order by nome asc limit 0,10';
$fetch=mysql_query($sql);
while($row=mysql_fetch_array($fetch, MYSQL_ASSOC)){
$row_array['value']=$row['nome'];
array_push($return_arr,$row_array);
}
mysql_close($conn);
echo json_encode($return_arr);

Grazie a chiunque riesca ad aiutarmi. :byebye:
 
Ciao, ripeti la stessa cosa che hai fatto per il nome anche per il cognome richiamando un php diverso
Codice:
$('#ConSearch').autocomplete({
      source: './include/search_cognome.php',
      minLength:2,  
      });
     })
 
Grazie per la risposta criric
ho pressapoco fatto la stessa cosa, ma solamente cercando di conglobare l' autocomplete nella stessa pagina di search.php.

Codice:
<script type="text/javascript" charset="utf-8">
$().ready(function(){
    $('#NomeSearch').autocomplete({
      source: './include/search.php?name_input=name',
      minLength:2,  
      });
      $('#NomeSearch').autocomplete({
      source: './include/search.php?name_i=cognome',
      minLength:2,  
      });
     $('#NomeSearch').autocomplete({
      source: './include/search.php?name_i=tel',
      minLength:2,  
      });
     })
</script>

e nel file search.php
PHP:
error_reporting(0);
include ("./connessione.php");
$return_arr=array();
if (isset($_GET) && isset($_GET['term']) && !empty($_GET['term'])) {
$term=$_GET['term'];
$name_i=$_GET['nome_i'];
if ($name_i=='nome') {
$sql='select DISTINCT nome from t_nominativi where nome like "'.mysql_real_escape_string($term).'%" order by nome asc limit 0,10';
$fetch=mysql_query($sql);
while($row=mysql_fetch_array($fetch, MYSQL_ASSOC)){
$row_array['value']=$row['nome'];
array_push($return_arr,$row_array);
}
}
if ($name_i=='cognome') {
$sql='select DISTINCT cognome from t_nominativi where cognome like "'.mysql_real_escape_string($term).'%" order by cognome asc limit 0,10';
$fetch=mysql_query($sql);
while($row=mysql_fetch_array($fetch, MYSQL_ASSOC)){
$row_array['value']=$row['cognome'];
array_push($return_arr,$row_array);
}
}
if ($name_i=='tel') {
$sql='select DISTINCT tel from t_nominativi where tel like "'.mysql_real_escape_string($term).'%" order by tel asc limit 0,10';
$fetch=mysql_query($sql);
while($row=mysql_fetch_array($fetch, MYSQL_ASSOC)){
$row_array['value']=$row['tel'];
array_push($return_arr,$row_array);
}
}
}
mysql_close($conn);
echo json_encode($return_arr);

Grazie ancora per lo spunto .
Alla prossima :byebye:
 
Ciao,avrei bisogno della stessa cosa. Sto cercando di utilizzare lo stesso codice che hai utilizzato tu,però ho una domanda. Nel file search.php passi alla variabile $nome=$_GET['term'] .
term cosa rappresenta?

Grazie
 
Ciao, term è il name assegnato all'input. Tutto quello che viene scritto nell'input di ricerca arriva a php nella variabile $_GET['term']
 
Ciao,ti chiedo scusa però non riesco a farlo funzionare.Vedo anche che compare la variabile $url e anche di questa non sò che valore prende.
Non credo che il codice postato sia completo per funzionare.Giusto ?
 
la variabile url non c'entra con l'autocomplete.
Apri una nuova discussione e descrivi il problema postando un po di codice.
 
A dire il vero io non ho codice da postare.Stavo cercando una soluzione per l'autocomple e mi hanno linkato questa discussione che potrebbe essere una soluzione,ma non saprei come impostarla a parte quello già scritto sopra con jquery
 
difficile indovinare perchè non funziona. Apri la console del browser e controlla se ti segnala errori, dal pannello "net" puoi verificare i dati spediti e quelli ricevuti.
 

Discussioni simili