Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    come evitare lo script al reload

    ho uno script nella community che mi incrementa un valore numerico ad ogni visita di un profilo in modo da poter fare una classifica del profilo più visitato solo che giustamente i furboni che fanno..

    aggiornano continuamente e incrementano da soli al massimo

    il codice è questo
    codice:
    <% 
    sql = "UPDATE Iscritti Set cont = cont + 1 WHERE id = "& cInt(request.querystring("ID"))
    Conn.Execute sql,esito
    
    Select Case esito
    Case 1
    'codice cambiamento effettuato
    Case Else
    'update non riuscito
    End Select
    Conn.close
    Set Conn = nothing
    %>
    ora quello che mi chiedo ..come faccio ad evitare che i reload della pagina mi incrementino sempre?

    grazie 23.000
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

  2. #2
    Quando fai partire la select SQL subito dopo valorizzi una variabile di sessione, meglio sarebbe un cookie in modo da poterlo leggere sempre, dove scrivi al suo interno metti un valore che equivale a false se l'utente e nuovo e true se l'utente ha già effettuato il voto.
    codice:
    if session("voto") = "false" then
    sql = "UPDATE Iscritti Set cont = cont + 1 WHERE id = "& cInt(request.querystring("ID"))
    Conn.Execute sql,esito
    session("voto") = "true"
    else
    response.write "Fubrone hai già votato"
    end if
    FEDERIX.IT - [Pillola] GRAFICA DEI FORM

    ...ho ancora quella forza che ti serve, quando dici "Si comincia!"

  3. #3
    funziona solo per un utente...mi spiego meglio...

    in questo modo se io visualizzo il profilo di un utente mi crea la sessione e quindi va tutto bene...
    ma se poi visualizzo il profilo di un altro utente non me lo incrementa neanche di uno in quanto ho la sessione crata nel profilo precedente :master:
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

  4. #4
    Allora al posto di true puoi memorizzare l'id dell'utente votato e fare un controllo tutte le volte, confrontando l'ID del votato con quello della sessione.
    FEDERIX.IT - [Pillola] GRAFICA DEI FORM

    ...ho ancora quella forza che ti serve, quando dici "Si comincia!"

  5. #5
    so che rischio di essese bastonato ma sapresti farmi un esempio?

    grazie ancora
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

  6. #6
    L'ho fatto un pò al volo, prova se funziona.
    codice:
    if session("id") <> "" then
    sqlid = "select * from iscritti where id = "&session("id")
    set rsid = conn.execute(sqlid)
    
    if rsid.eof then
    sql = "UPDATE Iscritti Set cont = cont + 1 WHERE id = "& cInt(request.querystring("ID"))
    set rs = conn.execute
    session("id") = request.querystring("id")
    else
    response.write "Furbone hai già votato"
    end if
    
    else
    sql = "UPDATE Iscritti Set cont = cont + 1 WHERE id = "& cInt(request.querystring("ID"))
    set rs = conn.execute
    session("id") = request.querystring("id")
    
    end if
    FEDERIX.IT - [Pillola] GRAFICA DEI FORM

    ...ho ancora quella forza che ti serve, quando dici "Si comincia!"

  7. #7
    non incrementa...non fa nulla...cmq se hai da fare la scia stare...
    ho gia disturbato troppo appena puo ie se vuoi mi rispondi...no problem
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

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.