Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    302

    Recupero valori da database in fase di insert

    buongiorno raga,
    ho una form che inserisce dei dati in un db mysql, in effetti considerato che i computer che gestisco in ufficio sono sempre gli stessi, mi piacerebbe in fase di insert, inserendo nel campo "Seriale" il seriale del pc, se quel seriale è stato già lavorato in passato, recuperare i campi dal db e valorizzare già

    "Computer" - "Matricola" - "VersioneSW"

    senza inserirli ogni volta....


    computer_seriale.jpg

    sarebbe possibile ?
    Se volete che la funzione di un programma non venga scoperta dall'utente, descrivetela nella documentazione...

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2014
    Messaggi
    27
    usa il tag select dopo aver estrapolato i dati con una query ad hoc.

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Il seriale e il nome pc risiedono sul S.O. per recuperarli devi installare un programma specifico (forse ci sono estesioni per il browser ma non sono sicuro) che recuperi questi dati, con js e php questo (fortunanamente) non lo puoi fare.
    Sempre che sia questa la richiesta.
    Ultima modifica di cavicchiandrea; 11-06-2014 a 13:32
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    302
    Quote Originariamente inviata da z3bmckey Visualizza il messaggio
    usa il tag select dopo aver estrapolato i dati con una query ad hoc.
    Ciao z3bmckey,
    non penso che il tag select possa fare al caso mio, nel senso che io vorrei che i campi "Computer", "Versione SW/HW" ecc. ecc. si autovalorizzassero dopo che io ho inserito nel campo "Seriale" il seriale del pc. Qualora quel seriale non fosse mai stato gestito, vorrei non venisse valorizzato nulla e proseguo con inserimento ex novo.

    Preparo la connessione al db, preparo la query, (fin qui tutto ok)..

    Questo il codice del campo input "Seriale"

    codice:
    <tdwidth="99">Seriale</td><td><inputname="seriale"required="required"class="uppercase"id="seriale"></td>

    come implemento l'esecuzione della query e la relativa valorizzazione dei campi

    codice:
    <tr>
    <td>Matricola</td>
    <td>inputname="matricola"class="uppercase"id="matricola"></td>
    
    <td>Versione SW</td>
    <td><inputname="versionesw"required="required"class="uppercase"id="versionesw"></td>
    </tr>
    Se volete che la funzione di un programma non venga scoperta dall'utente, descrivetela nella documentazione...

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    302
    Quote Originariamente inviata da cavicchiandrea Visualizza il messaggio
    Il seriale e il nome pc risiedono sul S.O. per recuperarli devi installare un programma specifico (forse ci sono estesioni per il browser ma non sono sicuro) che recuperi questi dati, con js e php questo (fortunanamente) non lo puoi fare.
    Sempre che sia questa la richiesta.
    Ciao Andrea,
    no la mia esigenza non è quella di recuperare info del sistema operativo, ma devo semplicemente evitare di compilare tutta la form ex novo nel caso in cui abbia già i dati presenti nel db mysql.

    In pratica
    1) Inserisco il seriale;
    2) Se il seriale non è presente nel database procedo con la compilazione di tutti i campi
    3) Se il seriale è già presente nel database recupero alcune informazioni che mi servono e faccio si che la query valorizzi già alcuni campi ridondanti evitando di riscrivere le informazioni.
    Se volete che la funzione di un programma non venga scoperta dall'utente, descrivetela nella documentazione...

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    292
    ciao condor_uk,
    in questo caso utilizzerei una chiamata ajax, se trovi riscontro in database la response conterrà i dati dei campi che dovranno autocompilarsi.
    Potresti anche facilitare l'inserimento del seriale utilizzando una ricerca in stile typehead, in modo che possa quasi sempre bastare l'inserimento dei soli primi numeri del seriale.

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    302
    Quote Originariamente inviata da arkus Visualizza il messaggio
    ciao condor_uk,
    in questo caso utilizzerei una chiamata ajax, se trovi riscontro in database la response conterrà i dati dei campi che dovranno autocompilarsi.
    Potresti anche facilitare l'inserimento del seriale utilizzando una ricerca in stile typehead, in modo che possa quasi sempre bastare l'inserimento dei soli primi numeri del seriale.
    Ciao arkus,
    nel ringraziarti per la risposta ti chiedo:
    riesci a postarmi un esempio di codice, non sono propriamente un programmatore ma un aspirante tale... con il vostro supporto sto prendendo pian piano il largo ma la strada per me è ancora lunga
    Se volete che la funzione di un programma non venga scoperta dall'utente, descrivetela nella documentazione...

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    292
    un codice di esempio che rispecchi quel che devi fare non lo ho,
    ma intanto ci sarebbe da capire se hai mai fatto una richiesta ajax e se vuoi provare questa strada (che secondo me sarebbe la più elegante).
    Verrebbe da consigliarti di sfruttare jquery per la parte javascript, in modo da banalizzare il codice lato client.
    Se cerchi "jquery ajax" troverai bizzeffe di esempi, se poi c'è qualcosa che non ti torna puoi chiedere qui.
    Una volta che sarai riuscito a inviare la richiesta potrai preoccuparti di integrare la parte server con query al DB e risposta al client.
    Step successivo l'autocompilazione, anch'essa abbastanza banale grazie a jquery.
    Alla fine si potrebbe provare la soluzione typehead pe ril seriale, ma lascerei questo aspetto per ultimo.

    Prova uno step alla volta e se incontri problemi sicuramente troverai un aiuto qui.

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    208
    Altra idea, se ho capito bene il problema, e senza toccare Ajax se non l'hai mai fatto:

    1) imposti un form preliminare di ricerca in cui digiti solo il seriale.

    2)l'action punta alla pagina di ricerca tramite metodo GET. Se la query non da risultati, ti stampi un avviso "Non è presente alcun intervento" e il form vuoto come ti esce ora. Altrimenti imposti le variabili risultanti come value dei field corrispondenti.

    Non mi viene in mente un metodo più veloce e accessibile.

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    302
    Buongiorno raga,
    allora ho fatto in questo modo:

    nella pagina "Inserisci Intervento" ho messo questo codice

    codice:
    <!-- SCRIPT AUTOVALORIZZAZIONE-->
    <script type="text/javascript">
            $('#seriale').change(function(){
        
    $.ajax({
      url:'autoc.php?rif_fatt='+$('#seriale').val(),
      dataType: 'json',
      success: function(data) {     
     $('#versionesw').val(data.versionesw);
     $('#matricola').val(data.matricola);
     
      },
      error: function(){alert('Attenzione operazione fallita...')}
    });
    
    
     });
     </script>
    La pagina autoc.php l'ho fatta cosi:

    codice:
    <?php
    /* APRO LA CONNESSIONE AL DB*/
    require('conn.php'); // dove ho la libreria per accedere al db
    
    
    //Preparo la query di visualizzazione
    
    
    $sql = "SELECT * FROM commesse";
    
    
    // Lanciamo la query:
    $result = mysql_query($sql);
    
    
    $row = mysql_fetch_array($fetch, MYSQL_ASSOC);
            $row_array['versionesw'] = $row['versionesw'];
            $row_array['matricola'] = $row['matricola'];
    
    
            array_push($return_arr,$row_array);
        }
    
    
    /* RISULTATI CODIFICATI IN JSON */
    echo json_encode($return_arr);
    ?>
    Non funziona ancora niente
    Se volete che la funzione di un programma non venga scoperta dall'utente, descrivetela nella documentazione...

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.