Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    24

    [asp & sql] Funzione precompila per un rapido inserimento nel DB

    Ciao ragazzi,

    purtroppo sono un neofita anche in questo campo
    ho una tabella "cellulare" con un sacco di campi (circa 30) e vorrei creare una funzione all'interno di un sito che, per l'aggiunta di un nuovo record, mi precompili tutti i campi come un record che è già presente nella tabella (penso contrassegnabile dall' ID [cellulare.ID] ) che mi permetta un più rapido inserimento per un nuovo modello di cellulare.

    Attualmente dispongo delle due funzioni basilari, "addnew" per l'inserimento di una nuova scheda con tutti i campi vuoti ed "edit" che mi da la possibilità di modificare i campi di un record.

    Esempio per capire:



    la tabella (cellulare) ha dei campi:

    ID (chiave)

    modello

    marca

    peso

    display

    colore

    ecc

    ecc..



    siccome mi capita spesso di inserire nuovi modelli di cellulari, che magari si differiscono solo per il colore, vorrei poter trovare i campi precompilati al momento di aggiungerne uno nuovo, così da non dover completare manualmente tutti e trenta i campi.



    E' una cosa possibile?

    Dovrei farlo parte in asp e parte in sql?

    Ciao e grazie

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480

    Moderazione

    Spostato in ASP.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    30 campi? Non dirmi che ogni campo è una marca di cellulare...

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    24
    Originariamente inviato da Domenix
    30 campi? Non dirmi che ogni campo è una marca di cellulare...
    no no, i campi li ho accennati sopra.

    id, marca, modello, peso, ecc

    io dovrei copiare un record per poi modificarne alcune parti e inserirlo, invece di inserire tutti i campi manualmente (cosa che mi fa perdere molto tempo)

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559
    CIAO!
    potresti fare un form di edit,

    dopo di che
    1) select sul db per prendere i dati dell' id che fa da modello
    2) precomipli i campi del form con i valori
    3) al submit farei l'inserimento del nuovo cellulare

    spero di averti aiutato!
    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    24
    Originariamente inviato da stefanomnn
    CIAO!
    potresti fare un form di edit,

    dopo di che
    1) select sul db per prendere i dati dell' id che fa da modello
    2) precomipli i campi del form con i valori
    3) al submit farei l'inserimento del nuovo cellulare

    spero di averti aiutato!
    per farvi capire meglio:

    la mia funzione Edit è così:
    codice:
    elseif request("Mode") = "Edit" then
        for f = 0 to TmpRSet.Fields.Count - 1
           Values(f) = TmpRSet.Fields(f)
        next
    dove in TmpRSet è presente il record che mi interessa grazie ad una apposita funzione sviluppata in vb.

    Adesso dovrei creare un secondo recordset per fare l'addnew e quello precedente lo userei per copiare i valori? Mi viene in mente una cosa così ma è sbagliata:

    codice:
    set Tmp2RSet as recordset?
    
    elseif request("Mode") = "Duplicate" then
    Tmp2RSet.AddNew
        for f = 1 to TmpRSet.Fields.Count - 1     //qui ho messo 1 perchè il primo campo
             Values(f) = TmpRSet.Fields(f)          //è l'id che non mi interessa copiare
        next
    Tmp2RSet.Update
    Tmp2RSet.Close
    set Tmp2RSet = Nothing
    Dove Values(f) è la lista dei campi del form, cioè:

    codice:
    <input name="Field<%=f%>" value="<%=Values(f)%>" type="text">

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    24
    lo potete dire che ho scritto un sacco di cagate

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559
    non conosco asp, quindi non so cosa siano esatttamente i "recordset"

    ad ogni modo il ciclo dove imposti i values mi sembra corretto per impostare i campi del form, ma secondo me nn centra niente con l'aggiornamento.
    per fare l'aggiornamento, io farei una insert secca al submit del form:

    sql = "insert into bla bla bla"....
    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    24
    il problema più grande però è che dal momento che metto TmpRSet.AddNew lui mi "azzera" il contenuto del record che fino a quel momento conteneva l'informazione che mi serviva, e lo predispone per un nuovo inserimento, ovvero mi da i campi tutti vuoti.

    Come dici tu dovrei creare una nuova funzione in vb? io purtroppo ne mastico poco sia di asp che di sql. ma ce la metto tutta per imparare!

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559

    tranquillo nessun giudizxio da parte mia, non risp solo perche non capivo!

    non ho mai usato asp quindi non conosco la funzionalita AddNew ne i record set :-( ...
    pero' pensandoci... tu crei una nuova riga ma non la valorizzi mai!

    set Tmp2RSet as recordset?

    elseif request("Mode") = "Duplicate" then
    Tmp2RSet.AddNew
    for f = 1 to TmpRSet.Fields.Count - 1 //qui ho messo 1 perchè il primo campo
    Values(f) = TmpRSet.Fields(f) //è l'id che non mi interessa copiare

    // qui dovresti riempie anche Tmp2RSet
    next
    Tmp2RSet.Update
    Tmp2RSet.Close
    set Tmp2RSet = Nothing

    spero che valorizzando il nuovo rowset ti possa funzionare sarebbe la cosa meno invasiva!
    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

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 © 2026 vBulletin Solutions, Inc. All rights reserved.