16 messaggi dal 21 gennaio 2003
Ciao a tutti ho un problemino con update
In pratica a seguito all'esecuzione di questo script il broswer mi restituisce un errore di sintassi nel comando update. Ma non riesco a capire dove sia l'errore!!
Qualcuno sa darmi una mano?
Grazie!!
<%@ LANGUAGE = JScript %>
<%

var id = Request.Form("id");


var stato = Request.Form("stato");

var giu8 = "";
giu8 += "driver={Microsoft Access Driver (*.mdb)};";
giu8 += "dbq=" + Server.MapPath("/mdb-database/immobili.mdb");

var sql = "";
sql += "UPDATE tabella SET ";
sql += "stato = '" + stato + "', ";
sql += "WHERE id = " + id;

var ADOConn = new ActiveXObject("ADODB.Connection");
ADOConn.Open(giu8);
ADOConn.Execute(sql);
ADOConn.Close();

%>
28 messaggi dal 20 marzo 2001
hai lasciato la virgola dopo aver scritto set nome campo=valore
16 messaggi dal 21 gennaio 2003
Cioè? puoi essere più chiaro??
28 messaggi dal 20 marzo 2001
la sintassi corretta dovrebbe essere

var sql = "";
sql += " UPDATE tabella SET ";
sql += " stato = '" + stato + "' ";
sql += " WHERE id = " + id;

nella tua che ho riscritto qui in basso compare una virgola dopo l'apice
sql += "stato = '" + stato + "', ";

il che dovrebbe generare la seguente stringa :

UPDATE tabella SET stato='miovalore',where id=id

vedi prima della parola chiave where c'è una virgola.

L'errore credo sia li' .Prova con una response.write sql
e postami cio' che appare a schermo.
16 messaggi dal 21 gennaio 2003
Adesso funziona tutto!! L'errore era proprio li..
Grazie per l'aiuto!!
16 messaggi dal 21 gennaio 2003
Lo so che sono un rompiscatole.... ma io di asp non capisco un granchè...

Udesso infatto mi è sorto un'altro problema sempre sullo stesso script..
devo aggiornare anche un campo memo contenuto nel database, inserisco la variabile ma il server mi restituisce il seguente messaggio:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
Errore di sintassi (operatore mancante) nell'espressione della query 'pippo pluto paperino ecc. ecc.'.


non riesco a cavarci piedi....

Ti allego in formato txt il codice... ci sono un sacco di variabili quella che aggiorna il campo memo è testo1 cioè la penultima.

<%@ LANGUAGE = JScript %>
<%

var id = Request.Form("id");
var prezzo = Request.Form("prezzo");
var stato = Request.Form("stato");
var Comune = Request.Form("Comune");
var Provincia = Request.Form("Provincia");
var Localita = Request.Form("Localita");
var Residence = Request.Form("Residence");
var Distanza_dal_mare = Request.Form("Distanza_dal_mare");
var Vista = Request.Form("Vista");
var Sup_Comm = Request.Form("Sup_Comm");
var Mq = Request.Form("Mq");
var Sup_Veranda_cop = Request.Form("Sup_Veranda_cop");
var Sup_Veranda_scop = Request.Form("Sup_Veranda_scop");
var Sup_Giardino = Request.Form("Sup_Giardino");
var Rendita = Request.Form("Rendita");
var Anno_costruzione = Request.Form("Anno_costruzione");
var Categoria = Request.Form("Categoria");
var Tipologia = Request.Form("Tipologia");
var piano = Request.Form("piano");
var Zone_giorno = Request.Form("Zone_giorno");
var Camere_Letto = Request.Form("Camere_Letto");
var Cucine = Request.Form("Cucine");
var Angoli_Cottura = Request.Form("Angoli_Cottura");
var Bagni = Request.Form("Bagni");
var Terrazzi = Request.Form("Terrazzi");
var Balconi = Request.Form("Balconi");
var Giardino = Request.Form("Giardino");
var Arredamento = Request.Form("Arredamento");
var impianti = Request.Form("impianti");
var Citofono = Request.Form("Citofono");
var Impianto_Tv = Request.Form("Impianto_Tv");
var Allarme = Request.Form("Allarme");
var Riscaldamento = Request.Form("Riscaldamento");
var Aria_Condizionata = Request.Form("Aria_Condizionata");
var Ristrutturare = Request.Form("Ristrutturare");
var Porta_Blindata = Request.Form("Porta_Blindata");
var infissi_esterni = Request.Form("infissi_esterni");
var Infissi_interni = Request.Form("Infissi_interni");
var Idromassaggio = Request.Form("Idromassaggio");
var Caminetto = Request.Form("Caminetto");
var Pav_Bagni = Request.Form("Pav_Bagni");
var Piastrelle = Request.Form("Piastrelle");
var Pav_Giorno = Request.Form("Pav_Giorno");
var Pav_Letto = Request.Form("Pav_Letto");
var Pav_Esterni = Request.Form("Pav_Esterni");
var Pav_Cucina = Request.Form("Pav_Cucina");
var Testo1 = Request.Form("Testo1");

var giu8 = "";
giu8 += "driver={Microsoft Access Driver (*.mdb)};";
giu8 += "dbq=" + Server.MapPath("/mdb.database/immobili.mdb");

var sql = "";
sql += "UPDATE tabella SET ";
sql += "prezzo = '" + prezzo + "', ";
sql += "Comune = '" + Comune + "', ";
sql += "Provincia = '" + Provincia + "', ";
sql += "Localita = '" + Localita + "', ";
sql += "Residence = '" + Residence + "', ";
sql += "Distanza_dal_mare = '" + Distanza_dal_mare + "', ";
sql += "Vista = '" + Vista + "', ";
sql += "Sup_Comm = '" + Sup_Comm + "', ";
sql += "Mq = '" + Mq + "', ";
sql += "Sup_Veranda_cop = '" + Sup_Veranda_cop + "', ";
sql += "Sup_Veranda_scop = '" + Sup_Veranda_scop + "', ";
sql += "Sup_Giardino = '" + Sup_Giardino + "', ";
sql += "Rendita = '" + Rendita + "', ";
sql += "Anno_costruzione = '" + Anno_costruzione + "', ";
sql += "Categoria = '" + Categoria + "', ";
sql += "Tipologia = '" + Tipologia + "', ";
sql += "piano = '" + piano + "', ";
sql += "Zone_giorno = '" + Zone_giorno + "', ";
sql += "Camere_Letto = '" + Camere_Letto + "', ";
sql += "Cucine = '" + Cucine + "', ";
sql += "Angoli_Cottura = '" + Angoli_Cottura + "', ";
sql += "Bagni = '" + Bagni + "', ";
sql += "Terrazzi = '" + Terrazzi + "', ";
sql += "Balconi = '" + Balconi + "', ";
sql += "Giardino = '" + Giardino + "', ";
sql += "Arredamento = '" + Arredamento + "', ";
sql += "impianti = '" + impianti + "', ";
sql += "Citofono = '" + Citofono + "', ";
sql += "Impianto_Tv = '" + Impianto_Tv + "', ";
sql += "Allarme = '" + Allarme + "', ";
sql += "Riscaldamento = '" + Riscaldamento + "', ";
sql += "Aria_Condizionata = '" + Aria_Condizionata + "', ";
sql += "Ristrutturare = '" + Ristrutturare + "', ";
sql += "Porta_Blindata = '" + Porta_Blindata + "', ";
sql += "infissi_esterni = '" + infissi_esterni + "', ";
sql += "Infissi_interni = '" + Infissi_interni + "', ";
sql += "Idromassaggio = '" + Idromassaggio + "', ";
sql += "Caminetto = '" + Caminetto + "', ";
sql += "Pav_Bagni = '" + Pav_Bagni + "', ";
sql += "Piastrelle = '" + Piastrelle + "', ";
sql += "Pav_Giorno = '" + Pav_Giorno + "', ";
sql += "Pav_Letto = '" + Pav_Letto + "', ";
sql += "Pav_Esterni = '" + Pav_Esterni + "', ";
sql += "Pav_Cucina = '" + Pav_Cucina + "', ";
sql += "Testo1 = '" + Testo1 + "', ";
sql += "stato = '" + stato + "'";
sql += "WHERE id = " + id;

var ADOConn = new ActiveXObject("ADODB.Connection");
ADOConn.Open(giu8);
ADOConn.Execute(sql);
ADOConn.Close();

%>
3.122 messaggi dal 16 maggio 2002
Innanzitutto ti consiglio di creare una funzione che formatta le stringhe prima di aggiungerle alla stringa sql, in modo che raddoppi gli apici singoli eventualmente presenti nel testo (che altrimenti causerebbero spiacevoli conseguenze).
Con vbscript puoi fare cosi': Replace(stringa,"'","''")
Con jscript... non so purtroppo.

The day Microsoft makes something that doesn't suck
is probably the day they start making vacuum cleaners.

Get caught!
Get caught again!
16 messaggi dal 21 gennaio 2003
Penso di aver capito qual'è il problema...
In pratica dentro il campo memo vengono inseriti anche caratteri come l'accento ' che non capisco perchè non viene accettatto dal file asp
qualcuno sa come posso ovviare al problema?

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.