Riempire campi direttamente tramite cerca....

  • Creatore Discussione Creatore Discussione Emix
  • Data di inizio Data di inizio

Emix

Utente Attivo
15 Feb 2010
596
0
16
Salve a tutti... Sto cercando di fare una struttura del ddt\fatture per il mio gestionale, ma mi trovo davanti ad un problema... Fare l'autocomplete con jquery è impossibile per me... per due motivi..
A) ho circa 3500 referenze nel DB
B) non capisco quasi nulla di JS e Jquery....

Detto questo... Grazie ad Alessandro sono riuscito ad integrare la creazione simultanea di 4 textbox che vengono creati tramite JQuery... il codice è il seguente :


PHP:
<!DOCTYPE html>
<html lang="it">
  <head>
    <meta charset="utf-8">
    <title>Creazione DdT</title>
            <style type="text/css">
        * { font-family:Arial; }
        h2 { padding:0 0 5px 5px; }
        h2 a { color: #224f99; }
        a { color:#999; text-decoration: none; }
        a:hover { color:#802727; }
        p { padding:0 0 5px 0; }

        input { padding:5px; border:1px solid #999; border-radius:4px; -moz-border-radius:4px; -web-kit-border-radius:4px; -khtml-border-radius:4px; }
        </style>
  </head>

  <body>
  <form action="read_ddt.php" method="post" name="read"> 
    <h2><a href="#" id="aggiungi">Aggiungi riga</a></h2>

    <div id="campi">
    <p>
      <div class="campo" style="display: none;">
        <input type="text" placeholder="Barcode" name="campo[]">
        <input type="text" placeholder="Codice" name="codice[]">
        <input type="text" placeholder="Descrizione" name="descrizione[]">
        <input type="text" placeholder="Quantità" name="quantita[]">
        <a href="#" class="remove">Rimuovi riga</a>
        </p>
      </div>
    </div>
    <p>
<input name="read" type="submit" id="read" value="Inserisci"> 
</p>
</form> 
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script>
    $(function() {
      $("#aggiungi").click(function() {
        elem = $(".campo").first().clone();
        elem.css("display", "block");
        elem.appendTo("#campi");
      });

      $("#campi").on("click", ".remove", function() {
        $(this).parent().remove();
      });

      $("#aggiungi").click();
    });
    </script>
  </body>
</html>

Ora a questo punto avrei dovuto integrare un autocompletamento, che inserendo il barcode si autoriempiono gli altri campi, ma dato la complessita e la mia poco istruzione su JS e Jquery ho deciso di metterci a fianco di rimuovi riga il cerca articolo...

Ora però io dovrei fare in modo che quando metto il barcode e clicco cerca si compilino automaticamente codice descrizione e quantita, prelevandoli dal database magazzino nella tabella articoli.
Fin qui potrei riuscirci, ma come faccio a fare in modo che si riempiano sempre i campi nuovi? quindi quelli dell'array?
 
Io ci provai tempo fa per una cosa del genere e non ci sono mai riuscito. su uan cosa più semplice ho suato una scappatoia magari ti può dare un idea.

PRaticamene metti il campo barcode che invia come GET.

Negli altri due campi poi metti una condizione del tipo
PHP:
<?php
if(isset($_GET['barcode']){ 
$sql = "SELECT * FROM tabella WHERE barcode='$_GET['barcode']";
$rest = mysql_query($sql);
while ($row= mysql_fetch_array($rest, MYSQL_ASSOC)) {
$codice=$row['codice'];
$desc=$row['descrizione'];
///....etc
}
}
?>
<input type="text" placeholder="Codice" name="codice" value="<?php echo $codice;?>"> 
        <input type="text" placeholder="Descrizione" name="descrizione" value="<?php echo $desc;?>">


a livello di eleganza forse non è il massimo però dovrebbe funzionare
 
forse non era qeullo che ti serviva mi sa...
comunque ho notato una cosa.

i tag script e tutto ciò che è in esso compreso vannno inseriti all'interno dei tag <head> ..........</head> forse per quello non ti funziona
 
no potrebbe andare... il mio unico problema è che ho una riga nuova ogni volta... e che le varie righe acquistano un indice... esempio... $desc alla riga dopo diventa $desc $desc[i+1] etc....
 

Discussioni simili