errore query

  • Creatore Discussione Creatore Discussione ferdi74
  • Data di inizio Data di inizio

ferdi74

Utente Attivo
2 Ago 2008
47
0
0
ciao ha tutti..sto facendo dei tes per un sito a cui sto lavorando..vorrei creare delle variabili di sessione ip e user ogni volta che viene caricata l'index per monitorare gli accessi..
fin qui nessun problema..ma quando provo con un comando automatico a far scrivere queste variabili in un db mi dice..

Errore di sintassi (operatore mancante) nell'espressione della query '127.0.0.1 & FREDDY-825C90AD\Freddy'.
/studi/index_stat.asp, line 19

ora posto il codice..premetto..pensavo fosse un problema di nomi nel db quindi ho sostituito "ip" con "indirizzo" e "user" con "nome"....i valori che vedete nell'errore sono le variabili che quindi funzionano..

<%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/connessione.asp" -->
<%
var Command1__indirizzo = "REMOTE_ADDR"
var Command1__nome = "LOGON_USER"
if(String(Request.ServerVariables( "REMOTE_ADDR")) != "undefined"){ Command1__indirizzo = String(Request.ServerVariables( "REMOTE_ADDR"));}

if(String(Request.ServerVariables( "LOGON_USER")) != "undefined"){ Command1__nome = String(Request.ServerVariables( "LOGON_USER"));}

%>
<%

var Command1 = Server.CreateObject("ADODB.Command");
Command1.ActiveConnection = MM_connessione_STRING;
Command1.CommandText = "INSERT INTO accessi VALUES ("+ Command1__indirizzo.replace(/'/g, "''") + " & "+ Command1__nome.replace(/'/g, "''") + ") VALUES (REMOTE_ADDR LOGON_USER) ";
Command1.CommandType = 1;
Command1.CommandTimeout = 0;
Command1.Prepared = true;
Command1.Execute();

%>

qualcuno puo aiutarmi a correggere la query?
 
Io ti posso scrivere come farla in ASP VBSCRIPT, il tuo codice sembrerebbe ASP JSScript, ma non ne sono sicuro, a occhio molte cose sono sbagliatissime.......



nome=replace(Request.ServerVariables( "LOGON_USER"),"'","''")
ip=replace(Request.ServerVariables("REMOTE_ADDR"),"'","''")

set comando1=server.createobject("adodb.command")
comando1.activeconnection=MM_connessione_STRING
comando1.commandtext="INSERT INTO Accessi (nome, ip) VALUES('"+nome+"','"+ip+"')"
comando1.execute()

comando1.activeconnection.close()



così dovrebbe andare

Ciao.
 
ciao daviduccio..prima di tutto grazie per il post..dunque..

è come dici..si tratta di asp js ( magari imparerò a specificarlo meglio nei post )

ho provato..ma prima mi dice che dopo 'set' è previsto ';' e quando lo aggiungo mi dice: ' previsto oggetto 'alla linea 4 cioè questa:

nome=replace(Request.ServerVariables( "LOGON_USER"),"'","''")

per curiosità ho provato anche il codice con asp vb e mi da quest'altro errore..

Gli argomenti non sono di tipo valido, non sono compresi nell'intervallo consentito o sono in conflitto.
/studi/Untitled-3.asp, line 7

la linea 7 è questa:

comando1.activeconnection=MM_connessione_STRING

da profano credo che sia perchè tutto il resto compreso il file di connessione usa asp js quindi MM_connessione_STRING è una variabile che in questo contesto non è riconosciuta o è cmq in conflitto..

e cmq l'ho provata in vb per curiosità ma devo risolverla in asp js..:-(
 
sappi che le sintassi SQL è uguale per tutti i linguaggi, è uno standard di comunicazione con i database.
Quindi la sintassi SQL sul tuo codice dovrebbe andare lo stesso.

:fonzie:
 

Discussioni simili