Visualizzazione dei risultati da 1 a 5 su 5

Discussione: ricerca google type

  1. #1

    ricerca google type

    Salve vi spiego il problema.
    Dovrei realizzare un gestionale per l'inserimento delle fatture ma lo voglio realizzare in stile google.
    Ho questi campi:
    Nome | Codice | codice barre

    Qualcuno potrebbe consigliarmi qualcosa per far si che se scrivo il nome (più di 2 lettere) o il codice a barre o il codice del prodotto, in un div dello schermo mi compaiano i probabili prodotti che rispecchiano le caratteristiche inseriti in un database mysql.

    Per esempio se scrivo: "ma"
    In una parte dello schermo mi esca:
    Maglione
    Maglia
    Maglietta ecc ecc
    Selezionando uno di questi mi compiono le sue caratteristiche (prezzo immagine ecc ecc) Nel form di inserimento senza postare la pagina.

    Classico esempio quello di google se scrivo you mi compare youtube ecc ecc e cliccando su youtube lo inserisce nel campo di ricerca.
    So che è una cosa realizzabile in php javascript ajax ecco il perchè di questa sezione anche se il codice per estrapolare i dati (che non è un problema) è chiaramente php

  2. #2
    Ho trovato questo script che penso faccia al caso mio:
    codice:
    <link rel="stylesheet" type="text/css" href="css/jquery.autocomplete.css" />
    <script type="text/javascript" src="js/jquery.js"></script>
    <script type='text/javascript' src='js/jquery.autocomplete.js'></script>
    <script type="text/javascript">
    $().ready(function() {
    	$("#prodotto").autocomplete("get_nome_prodotto.php", {
    		width: 260,
    		matchContains: true,
    		//mustMatch: true,
    		//minChars: 0,
    		//multiple: true,
    		//highlight: false,
    		//multipleSeparator: ",",
    		selectFirst: false
    	});
    });
    </script>
    Naturalmente il campo si chiama prodotto
    Questo è il file get_nome_prodotto.php

    Codice PHP:
    <?php
    include("librerie/connessione_db.php");
    $obj=new mysql();
    $obj->connessione();
    $q strtolower($_GET["q"]);
    if (!
    $q) return;

    $sql "select DISTINCT nome as nome from prodotti where nome LIKE '%$q%'";
    $rsd mysql_query($sql);
    while(
    $rs mysql_fetch_array($rsd)) {
        
    $cname $rs['nome'];
        echo 
    "$cname\n";
    }
    ?>
    Ho un problema su come attivare l'autocompletamento degli altri campi cioè completare anche il prezzo ecc ecc in base al prodotto scelto.
    Come è possibile farlo?

  3. #3
    Nessuno mi aiuta?

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Documentati su json sia per la parte php che per la parte jquery
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Ok ho trovato un ottimo script che fa al caso mio.
    In pratica attualmente aggiorna solo due campi, prodotto e codice.
    codice:
    <script type="text/javascript">
        $().ready(function(){
        $('#prodotto').autocomplete({
          source: 'get_nome_prodotto.php',
          minLength:2,
          change:function(event,ui){
            if(!ui.item){
              $(this).val('');
              $('#codice').val('');
              return false;
              }
            },
          select:function(event,ui){
            $('#codice').val(ui.item.id);
            }
          });
         })
    </script>
    la pagina php è:
    Codice PHP:
    <?php
    include("librerie/connessione_db.php");
    $obj=new mysql();
    $obj->connessione();
    error_reporting(0);
    $return_arr=array();
    $prodotto=$_GET['prodotto'];
    $sql='select * from prodotti where nome like "'.mysql_real_escape_string($prodotto).'%" order by nome';
    $fetch=mysql_query($sql);
    while(
    $row=mysql_fetch_array($fetchMYSQL_ASSOC)){
    $row_array['value']=$row['nome'];
    $row_array['id']=$row['codice'];
    $row_array['id2']=$row['codice_barre'];
    array_push($return_arr,$row_array);
    }
    echo 
    json_encode($return_arr);
    ?>
    Come posso ampliare l'auto completamento a piu campi?
    Penso che per il php sia sufficente aggiungerli nell'array json come ho fatto con $row_array['id2']=$row['codice_barre'];
    Ma per quanto riguarda il javascript?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.