Pagina 1 di 5 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 50
  1. #1

    newsID e database per click

    Salve! La solit prefazione è quella di essere un assoluto "amatore" di ASP e chiedo pietà per l'ignoranza.
    Ho modificato e integrato uno script per la gestione delle news. Funziona tutto!
    Quello che non mi riesce è la incrementazione del contatore dei click sul database.
    Dalla lista delle news si richiama la pagina index.asp che visulizza la newsID richiesta.
    Alla visualizzazione della newsID (ESempio miosito/index.asp?view=Display&ID=62) vorrei incrementare il database (campo click) della news con ID 62!.
    Sono piantato da due settimane e mi serve aiuto e magari anche una spiegazione per capire.
    il Dadabase è TBLnews mentre il campo contatore da incrementare è il click.
    Questa la parte incriminata!
    GRAZZZIE A TUTTI

    code:
    --------------------------------------------------------------------------------

    <%if pageView="" THEN%>
    <%
    ' Stringa di connessione al the database
    strSQL="SELECT * FROM TBLnews WHERE newsID LIKE " + ID)
    ' Apro il Database
    objRS.Open strSQL, objConn, adOpenKeyset, adLockPessimistic, adCmdText
    ' Incremento campo click sul Database
    objRS.Execute("UPDATE TBLnews SET click = click + 1 WHERE newsID LIKE " + ID);

    %>
    <%END IF%>

  2. #2

  3. #3
    già, perchè hai usato LIKE?

    Ciau!
    - Dean

  4. #4
    Ho usato LIKE perchè il contatore deve incrementare la news selezionata e non la pagina che la richiama.
    Ho sbagliato????
    Come dovrebbe essere la stringa?

  5. #5
    Intanto vi ringrazio anticipatamente per avermi risposto!
    Siete gentilissimi!!
    La stringa di connessione al database che legge la news attraverso la pagina index.asp funziona benissimo con LIKE
    Solo che questa istruzione non funziona per scrivere il campo click (contatore)
    Dovrei usare = ????

    In questo modo??? PROVO SUBITO
    objRS.Execute("UPDATE TBLnews SET click = click + 1 WHERE newsID =" + ID);

  6. #6
    Originariamente inviato da RoRiccardo
    Ho usato LIKE perchè il contatore deve incrementare la news selezionata e non la pagina che la richiama.
    Come? Puoi fare un esempio?

    Ho sbagliato????
    Come dovrebbe essere la stringa?
    Sostituisci LIKE con =

    Ciau!
    - Dean

  7. #7
    Questo è il codice della pagina asp chiamata a scrivere la news con ID richiesto

    <%@ Language=VBScript %>
    <%
    %>

    <%

    ' Connessione al database DSNLess
    ' Variabili di connessione

    dim objConn, strCon, objRS, strSQL
    Set objConn = Server.CreateObject("ADODB.Connection")

    strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/mdb-database/NewsCMS.mdb")
    objConn.connectionstring = strCon
    objConn.Open
    Set objRS = Server.CreateObject("ADODB.Recordset")
    ON ERROR RESUME NEXT

    Dim pageView, strNewsText
    ' Visualizza la news richiesta
    pageView=Request.Querystring("view")
    %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

    <html>
    <head>
    <title>mio sito</title>
    <link rel="stylesheet" type="text/css" href="includes/style.css">
    O M I S S I S
    </head>
    <body >
    <div align="center">
    <td >

    <font color="#FFFFFF" size="1">

    <%if pageView="" THEN

    ' We display the news article list

    %><%

    ' Acuisisco informazioni dal database con SQL e verifico
    strSQL="SELECT * FROM TBLNews WHERE newsStatus=1 ORDER BY newsDate DESC"
    ' Apro il Database
    objRS.Open strSQL, objConn, adOpenKeyset, adLockPessimistic, adCmdText
    IF NOT objRS.EOF THEN
    'objRS.Filter=objRS("newsStatus")=1
    %></font><font size="1"><p style="margin-top: 0; margin-bottom: 0">
    <font color="#FFFFFF">
    <%END IF%>
    <%END IF%>

    <%IF pageView="Display" THEN

    ' Scrivo la news richiesta-selezionata-cliccata

    ' Prendo la news dal database str SQL
    strSQL="SELECT * FROM TBLNews WHERE newsID="&Request.QueryString("ID")
    ' Apro il Database
    objRS.Open strSQL, objConn, adOpenKeyset, adLockPessimistic, adCmdText%>

    ' Istruzione scrivi data prelevandola dal database!
    Pubblicata: <%=objRS("newsDate")%>

    ' Istruzione scrivi e formatta testo prelevandolo dal database
    <%
    strNewsText = Replace(objRS("NewsBody"), vbCrLf, "
    ")
    Response.Write strNewsText
    %></font><font color="#FFFFFF" size="1">
    </font>
    </td></tr></table>
    <font color="#FFFFFF" size="1">
    <%END IF%>


    ------------------------------------fine codice

    FUNZIONA TUTTO ma non riesco a costriure bene l'istruzione di richiamo automatico di incremento campo click relativa alla nes ID selezionata sul database
    = NON FUNZIONA

  8. #8
    Originariamente inviato da RoRiccardo
    objConn.Execute("UPDATE TBLnews SET click = click + 1 WHERE newsID = " &ID)
    Senza il ; alla fine. Execute è un metodo della Connection.

    Ciau!
    - Dean

  9. #9
    Continuo a ringraziarti.
    La stringa è corretta ma ancora qualcosa non va!
    Non capisco come sia possibile riuscire a leggere i click ma non a scriverli.
    Questa parte anche se modificata non va.
    LO SO! I miei sono errori dovuti alla mancanza di concetti basilari di programmazione. Ma vi prego aiutatemi!
    Potreste suggerirmi la costruzione completa dell'istruzione.
    Almeno potrei capire come e perchè sbaglio!
    CHE DIO VI BENEDICA!!! GRAZZZIE cmq

    <%if pageView="" THEN

    %><%

    ' Stringa di connessione al the database
    strSQL="SELECT * FROM TBLnews WHERE newsID = " &ID)
    ' Apro il Database
    objRS.Open strSQL, objConn, adOpenKeyset, adLockPessimistic, adCmdText
    objConn.Execute("UPDATE TBLnews SET click = click + 1 WHERE newsID = " &ID)

    %>

    <%END IF%>

  10. #10
    Altro tentativo... ho provato a cambiare la stringa strSQL
    Non va neanche questo...
    SONO DISPERATO!!!

    <%if pageView="" THEN

    %><%

    ' Stringa di connessione al the database
    strSQL="SELECT * FROM TBLNews WHERE newsID="&Request.QueryString("ID")
    ' Apro il Database
    objRS.Open strSQL, objConn, adOpenKeyset, adLockPessimistic, adCmdText

    objConn.Execute("UPDATE TBLnews SET click = click + 1 WHERE newsID = " &ID)

    %>

    <%END IF%>

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.