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

    Cancellare dopo 4 record

    Salve, questa è la situazione che sto affrontando:

    Ogni utente di una communiti visita un profilo di un'altro,
    ho una tabella dedicata a questo.

    Tabella:
    visite
    Campi:
    ID
    Utente
    Visitante
    dataeora

    ogni sessione vede su se stesso chi lo visita
    mostrando le ultime 5 persone che lo hanno visitato.

    Lo script fa le seguenti operazioni:

    1) Controlla quante sono le visite contandole
    2) Se sono più di 4 fa una select MAX ID sui campi del visitato
    3) Se sono più di 4 dovrebbe cancellare l'ID più alto per dare spazio all'ultima visita

    Controllo quanti visitanti ho in corrispondenza del mio NickName
    SELECT Count(*) FROM visite WHERE Utente=io
    conteggio=x


    If conteggio > 4 Then
    estraggo ID massimo
    SELECT Max(tID) FROM visite WHERE Utente=io
    maxID=x

    cancello in corr. dell'ultimo ID
    DELETE FROM visite WHERE ID=maxID
    End If

    ' Inserisco la nuova visita
    INSERT INTO visite (io, visitante, data) VALUES (pippo, carlo, 10:30)


    Succede che fino a quando sono meno di quattro scrive regolarmente i dati di chi mi visita,
    oltre i 4 continuano a salire oltrepassando il limite, l'unico modo perchè cancelli il visitante con ID più alto, è commentare INSER INTO.
    Non capisco perchè non riesca a cancellare prima di scrivedere nuovi dati.

    Grazie
    http://www.romagnamania.com
    Una community tutta gratis per chi ama la Romagna.

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Fatti stampare al query di delete per vedere se la esegue.

    Roby

  3. #3
    Ok l'ho appena fatto, qualcosa è risultato di strano in effetti.

    succede che l'ID massimo estratto, è lo stesso di quello che dovrebbe cancellare,
    ecco perchè quando commento INSER INTO, quella DELETE cancella.

    Probabilmente le due query agiscono nello stesso momento dullo stesso ID.

    .... Nulla ancora non lavora bene

    DELETE FROM tuevisite WHERE tID=" & cLng(oRs(0)-1 ) & " AND....

    Ho aggiunto -1 per differenziare gli ID, ma ancora non cancella.
    http://www.romagnamania.com
    Una community tutta gratis per chi ama la Romagna.

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.