Carissimi amici, vi pongo un quesito nel quale ieri sera sono inciampato da inesperto :-)
Allora... ho applicato i tag nel mio sito, in modo da poter fare delle semplici ricerche... e adesso vorrei fare una cosetta più simpatica con la pubblicazione di una tabella con i tag più cliccati ed utilizzati... ma qui mi sono perso: ho creato una tabella che si chiama TB_TAG nella quale inserisco i TAG da utilizzare poi nell'inserimento dell'articolo...
ESEMPIO 1: se nell'articolo inerente alla nascita di un nuovo negozio SVG voglio citare i tag SVG TALAMINI ANDREA CARLO, prima vado nella sezione "inserisci tag" poi quando vado a compilare l'articolo, ho una sezione con menù a tendina dove vado a cliccare i tag sopra citati, così l'articolo me li inserisce.
Quindi ho la FASE 1 dove in una pagina specifica creo i nuovi TAG se non già presenti nell'elenco e la FASE 2 dove li seleziono per l'inserimento nell'articolo.
L'intoppo lo ho nella FASE 2 perchè mi piacerebbe fare in modo che quando clicco "PUBBLICA ARTICOLO" oltre all'inserimento dell'articolo e la registrazione dei vari campi (titolo, descrizione, luogo, foto, tag, autore, ect ect) in automatico andasse ad aumentare un "+1" al campo del tag inserito, così da tenere un contatore di quante volte lo ho usato.
Nello specifico ho il codice di pubblicazione dell'articolo:
E fin qui tutto ok e funzionante... poi subito dopo va ad aumentare il contatore di "+1" per ogni tag e qui non funziona... vi posto l'esempio per l'aumento di 1 sul tag 1codice:<% Set oConn=Server.CreateObject("ADODB.Connection") oConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Request.ServerVariables("APPL_PHYSICAL_PATH") & "MDB\tln.mdb" Set oRs=Server.CreateObject("ADODB.Recordset") oRs.Open "tb_articoli",oConn,3,3 oRs.AddNew oRs("ar_an")=Request("frm_ar_an") - qui registra il mese esempio gennaio 2011 oRs("ar_n")="NO" - qui imposta il non pubblicato, quindi non visualizza sul sito reale oRs("ar_titolo")=Request("frm_ar_titolo") - registra il titolo oRs("ar_tipo")=Request("frm_ar_tipo") - registra tipologia (sport, cultura, ect ect) oRs("ar_foto1")=Request("frm_ar_foto1") - registra foto articolo oRs("ar_video")=Request("frm_ar_video") - registra video youtube per visualizzazione oRs("ar_descrizione")=UCASE(Request("frm_ar_luogo")) & " - " & Replace(Request("frm_ar_descrizione"),chr(13)," ") - registra luogo ed articolo oRs("ar_scrittore")=Request("frm_ar_scrittore") - autore oRs("ar_tag")=Request("frm_tag_01") & " " & Request("frm_tag_02") & " " & Request("frm_tag_03") & " " & Request("frm_tag_04") & " " & Request("frm_tag_05") & " " & Request("frm_tag_06") - i 6 tag obbligatori oRs("ar_gg")=Right(CStr(100+Day(Date)), 2) - data giorno oRs("ar_mm")=Right(CStr(100+Month(date)), 2) - data mese oRs("ar_aa")=Year(date) - data anno oRs("ip_utente")=Request.ServerVariables("REMOTE_ADDR") oRs("ora_utente")=Time() oRs("data_utente")=Date() oRs.update oRs.close oConn.close %>
ERRORE:codice:<% Set oConn=Server.CreateObject("ADODB.Connection") oConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Request.ServerVariables("APPL_PHYSICAL_PATH") & "MDB\tln.mdb" Set oRs=Server.CreateObject("ADODB.Recordset") sql="SELECT * FROM tb_tag WHERE tag_nome=" & Request("frm_tag_01") oRs.Open sql,oConn,3,3 - qui mi da errore che ti posto di seguito ed è la linea 56 oRs("tag_visite")=oRs("tag_visite") + "1" oRs.update oRs.close oConn.close %>
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'tag_rinome=24ORE'.
/admin/02_articoli_4_nuovo_ok.asp, line 56
Io volevo impostarlo in modo da dire che quando trova nella tabella il TAG_NOME (es. SVG) ed è uguale a quello che gli passo io, aggiunga +1 al campo tag_visite
Sai dirmi dove erro? Perchè ho provato in mille modi e controllato tutto... e come vedi da errore il nome lo vede ma mi da errore.
nella tabella TAG ho un contatore con, un tag_nome col nome, un tag_rinome che è uguale a tag_nome e un campo tag_visite numerico.
Grazie e scusate il disturbo :-)


Rispondi quotando
