io invio i valori da un form che è dentro un ciclo, quindi , mi passa tutti i valori di piu record, i dati arrivano tutti e in modo corretto solo che quando vado a fare la insert mi scrive tutto nello stesso record, e non me li inserisce suddivisi come vengono passati...
Non so se sono riuscito a spiegarmi!!!
Posto un po di codice che forse è meglio!
Questo è il form
codice:
<form NAME="NewsDaPubblicare" method="POST" action="ModNewsDaPubblicare.asp">
<table>
<tr>
<td>Stato Pubblicazione:</td>
<%
If RS("Pubblica")="S" Then
Response.Write ("Pubblicato")
Else
Response.Write ("In Attesa di Pubblicazione")
End If
%>
</td>
<td>News N°:</td>
<td><input type="text" readonly="readonly" size="10" name="NumNews" value="<%Response.Write RS("ID")%>"></td>
<td></td>
<td>Data Inserimento:</td>
<td><input type="text" readonly="readonly" size="10" name="Data" value="<%Response.Write(FormatDateTime(RS("Data"),2))%>"></td>
</tr>
</table>
<table>
<tr>
<td>Oggetto:</td>
<td><input type="text" readonly="readonly" style="border:none" name="Oggetto" size="95" value="<%=Rs("Oggetto")%>"></td>
</tr>
<tr>
<td></td>
<td colspan="3"><textarea readonly="readonly" style="border:none" cols="77" rows="15" name="TestoNews"><%Response.write Rs("TestoNews")%></textarea></td>
</tr>
</table>
<table width="700px">
<tr>
<td><input type="button" value="Modifica" onclick="location.replace('ModNewsDaPubblicare.asp?ID=<%Response.write Rs("ID")%>')"></td>
</tr>
<tr>
<td><input type="checkbox" name="IDcheck" value="<%=Rs("ID")%>">Spunta per pubblicazione</td>
</tr>
<tr>
<td></td>
</tr>
</table>
<%
iRecordsShown = iRecordsShown + 1
RS.MoveNext
Loop
RS.Close
Set RS=Nothing
conn.Close
Set conn=Nothing
%>
<%End if%>
<table width="700px">
<tr>
<td class="center">
<input type="button" value="Check all" onClick="this.value=check(this.form.IDcheck)"><input type="submit" value="Pubblica le News selezionate" onClick="document.NewsDaPubblicare.action ='PubblicaNews.asp'">
</td>
</tr>
</table>
</form>
Questa invece è la pagina che pubblica le news selezionate "PubblicaNews.asp"
codice:
<%
DataNow = Now()
Oggetto = Replace(Request.form("Oggetto"), "'", "''")
TestoNews = Replace(Request.form("TestoNews"), "'", "''")
ID = request.form("IDcheck")
if len(ID) = 0 then
Response.Write("Nessuna News é stata selezionata per la pubblicazione")
Response.Write("</br>Torna indietro e seleziona almeno una News.")
Response.End
End If
if len(ID) > 0 then
Set Conn = Server.CreateObject("ADODB.Connection")
conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("/mdb-database/News.mdb")
SQL = "DELETE * FROM [News] WHERE ID IN (" & ID & ")"
Conn.Execute SQL
SQL = "INSERT INTO News(Data, Oggetto, TestoNews, Pubblica) VALUES ('"& DataNow &"', '"& Oggetto &"', '"& TestoNews &"' ,'S')"
Conn.Execute SQL
conn.close
set conn = nothing
end if
Response.Write("News Pubblicate Correttamente" & "</br>")
Response.Write("</br>Visualizza News")
Response.Write("</br>Torna indietro")
%>
Il delete funziona nel modo corretto, inatti elimina tutti i record con l'id che viene passato dal form, mentre la insert mi inserisce tutto in un unico record, la mia domanda è come fare per dividere tutto e sistemare nei nuovi record solo i valori interessati.
Grazie
Ciao!