Contatore visite

AREAFORUM

Nuovo Utente
8 Gen 2006
21
0
0
www.radiovenere.net
ho un problema di visualizzazione

su pagine viste oggi e pagine viste ieri mi da sempre zero!!

non riesco a capire perchè!

chiaramente il valore nel database è diverso da zero

grazie





Codice:
<%
     Dim intVisteOggi, intVisteIeri, a, b, intViste2006, intAccessi2006
     Dim objVisitsConn, objVisitsRs, strVisitsConn, strVisitsSQL
     
public sub  CalcolaAccessi()
   
    
    
    'Imposta Connessione e Recordset
     Set objVisitsConn = Server.CreateObject("ADODB.Connection")
     Set objVisitsRs = Server.CreateObject("ADODB.Recordset")

     'Stringa Connessione
     strVisitsConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("mdb-database/mdb/dbStats.mdb")

     'Apri Connessione
     objVisitsConn.Open strVisitsConn

'pagine viste OGGI
     b= Date()
     strVisitsSQL = "SELECT * FROM tblSt_Daily WHERE Data =" & b
     objVisitsRs.Open strVisitsSQL, objVisitsConn
      If objVisitsRs.EOF then
            intVisteOggi = 0
     Else       
          intVisteOggi = objVisitsRs("Hits")
      End IF
     objVisitsRs.Close

'paginve viste IERI
     a= DateAdd("d",-1,Date())
     strVisitsSQL = "SELECT Hits FROM tblSt_Daily WHERE Data =" & a
     objVisitsRs.Open strVisitsSQL, objVisitsConn
     If objVisitsRs.EOF then
            intVisteIeri= 0
     Else
            intVisteIeri= objVisitsRs("Hits")
     End IF
     objVisitsRs.Close

'paginve viste intero anno 2006
     strVisitsSQL = "SELECT Hits FROM tblSt_Counter WHERE Counters_ID = 1"
     objVisitsRs.Open strVisitsSQL, objVisitsConn
     If objVisitsRs.EOF then
            intViste2006= 0
     Else
            intViste2006= objVisitsRs("Hits")
     End IF
     objVisitsRs.Close

'Accessi Unici intero anno 2006
    strVisitsSQL = "SELECT Visits FROM tblSt_Counter WHERE Counters_ID =1"
    objVisitsRs.Open strVisitsSQL, objVisitsConn
    If objVisitsRs.EOF then
            intAccessi2006 = 0
     Else
            intAccessi2006= objVisitsRs("Visits")
     End IF
     objVisitsRs.Close


     'Chiudi Pulisci
     objVisitsConn.Close
     Set objVisitsConn = Nothing
     Set objVisitsRs = Nothing

End SUB
%>
<body bgcolor="#28457F" topmargin="0" leftmargin="10">

    <table width="175"  border="0" cellspacing="0" cellpadding="0" style="border: 1px solid #000000" height="15">
      <tr>
        <td height="1" background="public/pagine/stadioradionew/images/tblbg.gif" class="style1" width="173">
        <font color="#000000">::Statistiche di Accessi</font></td>
        </tr>
    </table> 

                    <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="17%" id="AutoNumber1" height="19">
                      <tr>
                        <td width="69%" height="15%"><font color="#FFFFFF">Accessi 2006</font></td>
                        <td width="31%" height="15%" align="center">
                        <font color="#FFFFFF">
                        <%Call CalcolaAccessi()%>
                        <% Response.Write(intAccessi2006)%></font></td>                                              
                      </tr>                      
                      <tr>
                        <td width="69%" height="15%"><font color="#FFFFFF">Pagine Viste 2006</font></td>
                        <td width="31%" height="15%" align="center">
                        <font color="#FFFFFF">
                        <%Response.Write(intViste2006)%>
                        </font></td>
                      </tr>
                      <tr>
                        <td width="69%" height="15%"><font color="#FFFFFF">Pagine viste oggi</font></td>
                        <td width="31%" height="15%" align="center">
                        <font color="#FFFFFF">
                         <%Response.Write(intVisteOggi)%></font></td>
                      </tr>
                      <tr>
                        <td width="69%" height="15%"><font color="#FFFFFF">Pagine viste ieri</font></td>
                        <td width="31%" height="15%" align="center">
                        <font color="#FFFFFF">
                         <%Response.Write(intVisteIeri)%></font></td>
                      </tr>
                      </table>
 
If objVisitsRs.EOF then
intVisteOggi = 0
Else
intVisteOggi = objVisitsRs("Hits")
End IF

A prima vista... prova così..

If objVisitsRs.RecordCount >0 then
intVisteOggi = objVisitsRs("Hits")
Else
intVisteOggi = 0
End IF

Magari ho detto una cavolata, ma tanto non costa nulla...

Ciao.
 
HO TROVATO IL PROBLEMA ANCHE SE ANCORA NON HO TROVATO IL MODO DI RISOLVERLO......;)

BE LA QUERY è CORRETTA COME L'ESECUZIONE DELLO STRIPT ED è GIUSTO ANCHE CHE DIA ZERO, IL PROBLEMA STA NEL FATTO CHE ACCESS CONSIDERA IL FORMATO PER LE DATE MM/GG/ANNO E NON COME GLIELO PASSA IL SERVER GG/MM/ANNO

QUINDI COME FACCIO A COMUNICARGLI LA DATA AVEVO PENSATO AD UN DATEPART CON UN CONCATENAMENTO SUCCESSIVO IN UNA STRINGA, O C'è QUALCHE FUNZIONE SPECIFICA?


GRAZIE
:fonzie:
 
AREAFORUM ha scritto:
...IL PROBLEMA STA NEL FATTO CHE ACCESS CONSIDERA IL FORMATO PER LE DATE MM/GG/ANNO...
Ciao! :)

Dipende da come lo setti tu in Access il formato della data.
Se vuoi che appaia GG/MM/AAAA basta che apri in visualizzazione struttura la tabella contenente il dato, e nelle proprietà del campo setti la data come vuoi tu! ;)

SaLuT!
:byebye:
 
ragazzi non ne vengo più fuori

ho modificato la struttura della tabella indicando come maschera di input gg/mm/aaaa ed indicando anche come formato data "data in cifre" ma niente da fare.....

ho anche fatto la seguente modifica

Codice:
'Pagine viste OGGI

      gg = datePart("d",now())
      mm = datePart("m",now())
      aa = datePart("yyyy",now())
      
      b= mm & "/" & gg & "/" & aa

     strVisitsSQL = "SELECT * FROM tblSt_Daily WHERE Data =" & b
     objVisitsRs.Open strVisitsSQL, objVisitsConn
      If objVisitsRs.EOF then
          intVisteOggi= 0
     Else
            intVisteOggi= objVisitsRs("Hits")
     End IF

     objVisitsRs.Close

ma niente da fare sempre 0

:incazz2: :incazz2:

:( :(
 
AREAFORUM ha scritto:
ragazzi non ne vengo più fuori

ho modificato la struttura della tabella indicando come maschera di input gg/mm/aaaa ed indicando anche come formato data "data in cifre" ma niente da fare.....

ho anche fatto la seguente modifica

Codice:
'Pagine viste OGGI

      gg = datePart("d",now())
      mm = datePart("m",now())
      aa = datePart("yyyy",now())
      
      b= [B][COLOR="Red"]mm & "/" & gg & "/" & aa[/COLOR][/B]

     strVisitsSQL = "SELECT * FROM tblSt_Daily WHERE Data =" & b
     objVisitsRs.Open strVisitsSQL, objVisitsConn
      If objVisitsRs.EOF then
          intVisteOggi= 0
     Else
            intVisteOggi= objVisitsRs("Hits")
     End IF

     objVisitsRs.Close

ma niente da fare sempre 0

:incazz2: :incazz2:

:( :(

Eccomi qui ;)

Beh, è logico che ti dia 0.
Nel DB hai impostato la data a GG/MM/AAAA, ma la variabile b è composta da MM/GG/AAAA. :)
Devi cambiare l'assegnazione del valore di b:
b = gg & "/" & mm & "/" & aa

Fammi sapere
:byebye:
 
No Questa Pensavamo fosse La Soluzione..nel Senso Che Sembra Che Il Data Base Funzioni Con mm.gg.aaaa....insomma Se Leggi Sopra Vedi Che Abbiamo Provato In Tutti E Due In Modi!

:( :(


sempre 0 il risultato
 
Ciao non so se il mio post ti servirà a qlcs...cmq ti posto una where che ho usato io con visual basic....
Non so anche asp riconosce la funzione Format..

where Data=#" & Format(TuaData, "mm dd yyyy") & "# order by Data"
 
basy82 ha scritto:
Ciao non so se il mio post ti servirà a qlcs...cmq ti posto una where che ho usato io con visual basic....
Non so anche asp riconosce la funzione Format..

where Data=#" & Format(TuaData, "mm dd yyyy") & "# order by Data"

Vale, la funzione Format è valida solo per Visual Basic, non per VBScript... :)
 
lukeonweb ha scritto:
Vale, la funzione Format è valida solo per Visual Basic, non per VBScript... :)

Infatti ho specificato...di non esserne sicura...:p
Faccio un pò asp, un pò visual basic... e questi sono i risultati...:D

Ps. Ho fatto 100 messaggi!!! questo e num 101...luca tra un pò ti raggiungo..:beer:
 
Daily_ID Data Mese Hits Visits
1 30/03/2006 03-2006 87 4
2 31/03/2006 03-2006 157 34
3 01/04/2006 04-2006 224 46
4 02/04/2006 04-2006 9 3
5 05/04/2006 04-2006 9 3
6 30/11/2006 04-2006 9 3
7 05/04/2006 04-2006 9 3
8 06/04/2006 04-2006 9 3

pagine viste oggi SELECT Hits FROM tblSt_Daily WHERE Data =06/04/06
pagine viste ieri SELECT Hits FROM tblSt_Daily WHERE Data =05/04/06

NIETEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE


NON SO CHE DIRE

VI HO INDICATO LA QUERY ED ANCHE LA TABELLA RISULTATO SEMPRE 0

PERCHè

:(
 
Prova a convertire il paramentro in formato data allora: ;)
"SELECT Hits FROM tblSt_Daily WHERE Data =" & Cdate("06/04/06")

Altrimenti, a questo punto ti consiglio di settare il campo Data come campo alfanumerico, e operare direttamente su stringhe, e poi la query la strutturi così:
"SELECT Hits FROM tblSt_Daily WHERE Data ='" & var_ASP_con_data & "';"

:byebye:
 
ecco la soluzione
Codice:
'Pagine viste OGGI

      b= Date ()
    new_b=month(b) & "/" & day(b) & "/" & year(b) 'data in formato inglese

     strVisitsSQL = "SELECT Hits FROM tblSt_Daily WHERE cdate(Data)=#" & cdate(new_b) & "#"
     objVisitsRs.Open strVisitsSQL, objVisitsConn
      If objVisitsRs.EOF then
          intVisteOggi= 0
     Else
            intVisteOggi= objVisitsRs("Hits")
     End IF

     objVisitsRs.Close

'Paginve viste IERI
    a= DateAdd("d",-1,Date())
    new_a=month(a) & "/" & day(a) & "/" & year(a) 'data in formato inglese

     strVisitsSQL = "SELECT Hits FROM tblSt_Daily WHERE cdate(Data)=#" & cdate(new_a) & "#"


     objVisitsRs.Open strVisitsSQL, objVisitsConn
     If objVisitsRs.EOF then
            intVisteIeri= 0
     Else
            intVisteIeri= objVisitsRs("Hits")
     End IF
     objVisitsRs.Close

finalmente

:mavieni: :mavieni:

ragazzi grazie di cuore per l'aiuto che mi avete dato........:beer:
 

Discussioni simili