PDA

View Full Version : [ASP] Problema form


Kintaro10
26-05-2005, 21:16
Ciao a tutti!
Dunque sto facendo una pagina in asp per la modifica di un database: questa pagina mi carica tutti i record e me li mette in una tabella, ordinati per righe. In ogni riga c'č un pulsante modifica, e cliccandolo va nella pagina successiva ove si possono modificare i vari campi della voce scelta. Il mio problema č che quando faccio il form e premo modifica, invece di mandarmi nell'altra pagina solo la variabile di quella riga (Esempio il nome Mario), mi manda tutti i record (Esempio nella variabile in questione mi memorizza Mario, Luigi, Paolo ecc ecc).

Quoto un pezzo del mio script:

<table width="240" border="1">
<%

while (!ris.EOF){
Nomeg = String(ris("Nome"));
%>
<tr>
<form name="form" method="post" action="mod_off_2.asp">
<input name="Nome1" type="hidden" id="Nome1" value="<%= Nomeg%>">
<td width="143"><%= Nomeg%></td>
<td width="84"><div align="center">
<input type="submit" value="Modifica">
</div></td>
</tr>
<%
ris.MoveNext();
}
%>


Nella pagina successiva se faccio var Nome2 = Request.Form("Nome1"); su Nome1 mi memorizza tutti i Nomi della tabella, e non solo quello della riga scelta. Dove sbaglio?

cionci
27-05-2005, 08:04
Ma il tag form lo chiudi ?

Kintaro10
27-05-2005, 16:42
Ma il tag form lo chiudi ?

ecco cosa succede a scervellarsi pensando a chissā quale errore :rolleyes: ... era proprio per quello, grazie!

Ho perso un'ora della mia vita per una errore banale, pensando a chissā cosa... :mc:

Ciao :)

Kintaro10
27-05-2005, 19:15
Altro problemino...

var Nomeg = Request.Form("Nome");
Response.Write("Record n° " + Nomeg + "<br>");
var SQL="SELECT * FROM Offerte WHERE NOME = 'Nomeg'";

Cosa c'č di sbagliato secondo voi? Il comando response mi da il corretto risultato (e cioč il contenuto della variabile Nomeg che č una stringa di caratteri), mentre non mi prende il comando sql... E' come se mi facesse la comparazione tra i campi della tabella e Nomeg intesa come parola e non variabile.

Perchč?

cionci
27-05-2005, 19:26
"SELECT * FROM Offerte WHERE NOME = '"+Nomeg+"'";

Kintaro10
27-05-2005, 22:08
Grande, grazie mille :) :ave: !

Ciao ;)

Kintaro10
29-05-2005, 15:27
Rieccomi :mc: . Ok sto facendo un piccolo manuale di asp con i miei post... :)

Dunque altro problemino: ho un campo Prezzo, settato sul database come campo valuta.
Per leggere questo campo uso questo comando:

Prezzog = String(ris("Prezzo"));

Fin qua tutto bene. Perō se voglio procedere ad una modifica ho un problema: leggo il campo come sopra citato e lo riporto dentro un input di tipo text. Tramite il form faccio andare in un'altra pagina la nuova variabile e faccio l'update della tabella in questo modo:

var sql="UPDATE Offerte SET Prezzo='"+Prezzog+"' WHERE Nome = '"+Nomeg+"'";
Conn.Execute(sql);

A questo punto mi da errore (Errore interno del server) e penso derivi dal fatto che il campo sulla tabella č Valuta mentre tento di salvare un testo. Come posso ovviare a questo problema?

Grazie, ciao ciao :) .

cionci
30-05-2005, 11:47
Fai una stampa a schermo della variabile SQL (senza effettuare la query), in questo modo vedi se le variabili sono valorizzate correttamente...

Kintaro10
30-05-2005, 20:43
la variabile era corretta... beh ho messo il campo text ed ho risolto la situazione :) .

Grazie cmq dell'attenzione! :cool:

Ciao!