Visualizzazione dei risultati da 1 a 10 su 10

Discussione: problema apici DB

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274

    problema apici DB

    Ho questo codice che mi genera errore quando ricerca alcuni campi in cui c'è l'apice:

    codice:
    <%
    strconn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("/mdb-database/Archivio.mdb")
    set Conn=Server.CreateObject("ADODB.Connection")
    Conn.Open strConn
    
    artista=Request.Form("Artista")
    
    
    sql = "SELECT * FROM Archivio  WHERE Artista= '" & Artista & "' ORDER BY Brano"
    
    
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3
    %>
    
    <font color="#FFFFFF">-</font></p>
    
    <div align="center">
    <p align="center"><font size="6"><%response.write Artista%></font></p>
    L'artista viene selezionato da un form a cascata che si crea prelevando i nomi da una tabella del DB.

    Come faccio ad integrare il codice per la sostituzione dell'apice con il doppio apice?

    qualcuno sarebbe così gentile da integrarmelo?

    Grazie.

  2. #2
    Artista = Replace(Artista, "'", "''")

    that easy!

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    ok grazie ora va però mi si crea un'altro problema:

    l'apice a video si vede doppio.

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    ho risolto rimettendo dopo l'interrogazione del DB

    Artista = Replace(Artista, "''", "'")

    E' corretto?

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Quello che scrivi a video non è il frutto dell'interrogazione nel db ma ciò che passi tramite form.
    Per non alterare il suo valore a video rispetto a ciò che ti serve nella query:
    codice:
    <%
    strconn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("/mdb-database/Archivio.mdb")
    set Conn=Server.CreateObject("ADODB.Connection")
    Conn.Open strConn
    
    artista=trim(Request.Form("Artista"))
    artista2 = replace(artista,"'","''")
    
    sql = "SELECT * FROM Archivio  WHERE Artista= '" & Artista2 & "' ORDER BY Brano"
    
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3
    %>
    
    <font color="#FFFFFF">-</font></p>
    
    <div align="center">
    <p align="center"><font size="6"><%response.write Artista%></font></p>
    Roby

  6. #6
    la domanda è: che lo leggi a fa', se poi non lo usi...

  7. #7
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Originariamente inviato da optime
    la domanda è: che lo leggi a fa', se poi non lo usi...
    Ah beh...

    Roby

  8. #8
    la domanda era per o'coccia ovviamente...

  9. #9
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Originariamente inviato da optime
    la domanda era per o'coccia ovviamente...

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    Originariamente inviato da optime
    la domanda è: che lo leggi a fa', se poi non lo usi...
    non ho afferrato a cosa ti riferisci


    Grazie mille per aiuto e soluzioni ad entrambi!

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.