Newsgroup: it.comp.java
Titolo: query...aiutooooo!

Ciao a tutti, avrei un problemino con una query...
quando mi esegue questa query
String Query ="UPDATE TProdotti SET nomep='"+NomeP+"' WHERE idprodotto
='"+IdP+"'";
invece di inserire nella tabella il valore che voglio io,mi inserisce il
valore null
qualcuno mi sa dire perchè e cosa devo fare?
grazie
ciao
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 qualcuno mi sa dire perchč e cosa devo fare?


I valori vengono presi dal file FEditform.jsp e me li visualizza
correttamente, poi edit.jsp dovrebbe cambiarmi i valori con altri che
inserisco io, ma mi cambia il valore con null!
FEditform.jsp
<%@page contentType="text/html"%>
<html>
<head><title>JSP Page</title></head>
<body>
<%@ page language="java" import="java.sql.*" %>
<%!
String IdP;
String NomeP;
String DescP;
String QdP;
String PrezzoP;
String conn;
%>
<%
String IdP=request.getParameter("idp");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection Conn = DriverManager.getConnection("jdbc:odbc:bard", "", "");
Statement SQLStatement = Conn.createStatement();
String Query = "SELECT * FROM TProdotti where idprodotto='"+IdP+"'";
 
ResultSet SQLResult = SQLStatement.executeQuery(Query);
            while(SQLResult.next())
            {
                        NomeP = SQLResult.getString("nomep");
                        DescP = SQLResult.getString("descp");
                        QdP = SQLResult.getString("quant");
                        PrezzoP = SQLResult.getString("prezzo");
            }
%>
<table align="center" width="100">
<TR BGCOLOR="#FF9800">
<td><td></tr>
<TR BGCOLOR="#FF9800">
<TD VALIGN="top" WIDTH="171" BGCOLOR="#FF9800"></td>
</tr>
    <TR>
    <TD VALIGN="top" WIDTH="171" BGCOLOR="#FF9800">
        <TABLE WIDTH="171" BORDER="0" CELLSPACING="0" CELLPADDING="0">
        <FORM NAME="REGISTER" METHOD="post" ACTION="Edit.jsp?idp=<%=IdP%>">
        <TR BGCOLOR="#FF9800">
        <TD ALIGN="right" VALIGN="middle" WIDTH="79">Nome</TD>
        <TD ALIGN="center" VALIGN="middle" WIDTH="92"> <FONT SIZE="2" FACE="Arial,
Helvetica, sans-serif">
        <INPUT TYPE="text" SIZE="6" MAXLENGTH="50" NAME="nome" value="<%=NomeP%>">
        </FONT>
    </TD></TR>
    <TR BGCOLOR="#FF9800">
    <TD ALIGN="right" VALIGN="middle" WIDTH="79">Descrizione Prodotto</TD>
    <TD ALIGN="center" VALIGN="middle" WIDTH="92"> <FONT SIZE="2" FACE="Arial,
Helvetica, sans-serif">
    <INPUT TYPE="text" SIZE="6" MAXLENGTH="50" NAME="descp" value="<%=DescP%>" >
    </FONT></TD>
    </TR>
<TR BGCOLOR="#FF9800">
        <TD ALIGN="right" VALIGN="middle" WIDTH="79">Quantità</TD>
        <TD ALIGN="center" VALIGN="middle" WIDTH="92"> <FONT SIZE="2" FACE="Arial,
Helvetica, sans-serif">
        <INPUT TYPE="text" SIZE="6" MAXLENGTH="50" NAME="quant" value="<%=QdP%>">
        </FONT></TD>
        </TR>
        <TR BGCOLOR="#FF9800">
        <TD ALIGN="right" VALIGN="middle">Prezzo</TD>
        <TD ALIGN="center" VALIGN="middle"> <FONT SIZE="2" FACE="Arial, Helvetica,
sans-serif">
        <INPUT TYPE="text" SIZE="6" MAXLENGTH="50" NAME="prezzo"
value="<%=PrezzoP%>">
        </FONT></TD></tr>
        <tr>
        <td><input type="submit" value="Edit"></td>
        </TR>
</table>
<%
SQLResult.close();
SQLStatement.close();
Conn.close();
%>
</body>
</html>
Edit.jsp
<html><head><basefont face="Arial">
</head>
<body>
<%@ page language="java" import="java.sql.*" %>
<%!
String IdP;
String NomeP;
String DescP;
String QdP;
String PrezzoP;
String conn;
%>
<table border="2" cellspacing="2" cellpadding="5">
<tr>
<td><b>Id Prodotto</b></td><td><b>Nome</b></td><td><b>Descrizione
Prodotto</b></td>
<td><b>Quantità</b></td><td><b>Prezzo</b></td>
</tr>
<%
String IdP=request.getParameter("idp");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection Conn = DriverManager.getConnection("jdbc:odbc:bard", "", "");
Statement SQLStatement = Conn.createStatement();
String Query ="UPDATE TProdotti SET nomep='"+NomeP+"' WHERE idprodotto
='"+IdP+"'";
int SQLCheck = SQLStatement.executeUpdate(Query);
if(SQLCheck != 0)
            {
            out.println("Aggiornamento effettuato.");
            }
            else
            {
            out.println("Errore! Riprova, grazie!.");
            }
Conn.close();
%>
</table>
</body>
</html>


 String NomeP;
NomeP non viene mai valorizzata qui
devi prendere il valore mandato via POST
NomeP = request.getParameterValues("NomeP");


Grazie mille!!!
