Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    conrollo dati esistenti

    scusate se per l'ennesima volta chiedo aiuto ma..

    leggete qui e ditemi cosa sbaglio:

    <%
    dim Nome
    Nome = request.form("Nome")

    dim Cognome
    Cognome = request.form("Cognome")

    dim Data
    Data = request.form("Data")

    dim Luogo
    Luogo = request.form("Luogo")

    dim strCode
    strCode="kikko"


    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("db\db.mdb")
    strConn=strConn & ";pwd=" & strCode
    Conn.Open strConn

    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3

    sql = "SELECT * FROM Tabella1"

    if (Nome<>"") then
    do while not rs.eof
    exist=rs("Nome")

    if (Nome = Exist) then
    response.Write("già presente")
    end if
    rs.movenext
    loop
    end if
    conn.Close
    Set conn = Nothing

    if ( (Nome<>"") ) then

    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("db\db.mdb")
    strConn=strConn & ";pwd=" & strCode
    Conn.Open strConn


    rs.addnew
    rs(1) = Nome
    rs(2) = Cognome
    rs(3) = Data
    rs(4) = Luogo
    rs.update

    End If

    rs.Close
    set rs = Nothing
    conn.Close
    set conn = Nothing

    response.Redirect("inserito.asp")
    %>

    ..
    bàh..io nn so'!
    ...e anke

  2. #2
    Utente bannato
    Registrato dal
    Oct 2003
    Messaggi
    372
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3

    sql = "SELECT * FROM Tabella1"


    se vedi bene òla stringa sql è dichiarata troppo tardi...
    scrivi così


    sql = "SELECT * FROM Tabella1"

    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3

  3. #3

    ..

    ho provato a fare cm hai detto ma m appare sto errore:

    File: C:\Active Server Page\send_data_prova.asp
    Source: ADODB.Recordset
    Error: 800A0E78
    Description: L'operazione non è consentita se l'oggetto è chiuso.
    Line: 53 Column: 0
    Code: rs.addnew

  4. #4
    Utente bannato
    Registrato dal
    Oct 2003
    Messaggi
    372
    allora...

    hai chiuso la connessione per poi riaprirla?!? mi sa che il recodset intanto s'è volatilizzato.

    da questa porzione

    if (Nome = Exist) then
    response.Write("già presente")
    end if
    rs.movenext
    loop
    end if
    conn.Close
    Set conn = Nothing


    if (Nome = Exist) then
    response.Write("già presente")
    end if
    rs.movenext
    loop
    end if
    conn.Close
    Set conn = Nothing

    if ( (Nome<>"") ) then

    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("db\db.mdb")
    strConn=strConn & ";pwd=" & strCode
    Conn.Open strConn


    elimina le righe in grassetto

  5. #5
    Utente bannato
    Registrato dal
    Oct 2003
    Messaggi
    372
    cmq... per verificare se un nome è presente in una tabella e aggiungerlo nel caso non esistesse bastano pochissime righe di codice.

    cmq... intanto sviluppa questo, poi se ti va vediamo anche l'altro metodo così che potrai anche constatare le differenze.

  6. #6

    ...

    grazie mille..per adesso funziona ma...

    il problema è che il record lo inserisce lo stesso
    ..in teoria dovrebbbe nn inserirlo se c'è già...
    aiutoooo

  7. #7
    Utente bannato
    Registrato dal
    Oct 2003
    Messaggi
    372
    allora,
    cambia il ciclo:


    esiste=false
    do while not rs.eof
    exist=rs("Nome")

    if (Nome = Exist) then esiste=true
    end if
    rs.movenext
    loop

    poi la condizione prima dell'adnew non è

    if ( (Nome<>"") ) then

    ma devi sostituirla con

    if not esiste then

  8. #8

    .......

    sempre io
    ..cmq adesso ho messo così...
    esiste=false
    do while not rs.eof
    exist=rs("Nome")

    if (Nome = Exist) then esiste=true
    rs.movenext
    loop
    end if


    if not esiste then


    rs.addnew
    rs(1) = Nome
    rs(2) = Cognome
    rs(3) = Data
    rs(4) = Luogo
    rs.update

    End If

    rs.Close
    set rs = Nothing
    conn.Close
    set conn = Nothing

    response.Redirect("inserito.asp")
    %>
    ma l'errore che m da è questo..

    File: C:\Active Server Page\send_data_prova.asp
    Source: Errore di compilazione di Microsoft VBScript
    Error: 800A0400
    Description: Prevista istruzione
    Line: 38 Column: 0
    Code: end if

  9. #9
    Utente bannato
    Registrato dal
    Oct 2003
    Messaggi
    372
    cancella quell'end if in grassetto

    if (Nome = Exist) then esiste=true
    rs.movenext
    loop
    end if

  10. #10
    Utente bannato
    Registrato dal
    Oct 2003
    Messaggi
    372
    no, scusa, posta tutto il codice.

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.