Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Problema con DATA

  1. #1

    Problema con DATA

    Ciao a tutti.
    Ho la necessità di pubblicare degli annunci una bacheca che durino al massimo 3 mesi dalla data di inserimento.
    Nella tabella "INSERZIONI" ho inserito "DATA_FINE" (data di inserimento più tre mesi).
    Nonostante la condizione (DATA_FINE >= " & oggi & ") continuo però a visualizzare tutte le inserzioni...
    Ecco il codice

    codice:
    <%
    Dim objConn, strConn, objRs, strsql, oggi 
    
    oggi = Date()
        
    If Session("login") then
    	strConn = Application("dbconn")
    	strsql = "Select * from INSERZIONI where (ID1= " & id1 & ") and (DATA_FINE >= " & oggi & ") order by DATA, ORA" 
    	
    	Set objConn = Server.CreateObject("ADODB.Connection")
    	objConn.Open strConn
    	Set objRs = Server.CreateObject("ADODB.Recordset")
    
    	objRs.CursorLocation = adUseClient
    	set objRs = objConn.Execute(strsql)
    	
    	
    	response.write "<div align=center>"	
    	response.write "<table border='1' width='80%' cellpadding='4' cellspacing='4' bgcolor='bisque'>"
    	response.write "<tr><th colspan='5' align='center'><font size='+2' color='firebrick'>LE TUE INSERZIONI</font></th</tr>"
    	
    		Do while Not objRs.EOF
    %>			
    	<tr>
    	    <td width="15%"><font color='teal'><%= objRs("COD") %></font></td>
    		<td width="15%"><font color='teal'><%= objRs("DATA") %></font></td>
    		<td width="50%"><font color='teal'><%= objRs("OGGETTO") %></font></td>
    		<td width="10%">">cambia</td>
    		<td width="10%">&FOTO=<%=objRs("FOTO")%>">cancella</td>
    	</tr>			
    <%
    		objRs.MoveNext
    		Loop
    		Response.write "</table></div>"
    		Response.write(Date())
    
     end if
    end if
    %>
    grazie per l'aiuto

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    254
    Quale databse usi? Le date hanno un loro separatore (x es. in Access devi usare # e in SQL Server ').
    Controlla poi anche il formato della data, se è inglese e data_fine =12/10/2005, viene interpretato come 10/12/2005, quindi non ancora scaduto.

  3. #3
    Grazie per la risposta, elfa.
    Era proprio un problema di conversione italiano-inglese.

    Ho risolto scomponendo la data in questo modo:
    <%
    Dim AnnoOggi, MeseOggi, GiornoOggi, oggi

    AnnoOggi = Year(Date)
    ' se il mese della data è minore di 10 gli metto davanti uno 0
    if Month(Date) < 10 then
    MeseOggi = "0" & Month(Date)
    else
    MeseOggi = Month(Date)
    end if
    ' se il giorno della data è minore di 10 gli metto davanti uno 0
    if Day(Date) < 10 then
    GiornoOggi = "0" & Day(Date)
    else
    GiornoOggi = Day(Date)
    end if
    ' trasformo quindi la data di oggi nel formato AAAAMMGG
    oggi = AnnoOggi&MeseOggi&GiornoOggi
    %>

    ciao e grazie ancora

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    254
    Se vuoi evitare la scomposizione puoi inserire
    codice:
    Session.LCID 1033
    prima della query
    e
    codice:
    session.lcid 1040
    dopo

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.