Ciao a tutti!
Premetto che so poco di ASP...ma ci provo.
Ho una pagina che dovrebbe restituire a video le società presenti nel database; a me piacerebbe che fossero in ordine alfabetico (...e fin qui ok) ma che si presentassero così per es.:
A
Albergo xyz
Albergo www
B
Barca
Bell
ecc...
Praticamente con le lettere dell'alfabeto iniziali.
Uso il seguente codice:
Ho provato a mettere anche questo codice:codice:<%@ Language=VBScript %> <% Option Explicit Response.ExpiresAbsolute=Now() %> <H1>Le Società</H1> <% Dim conn Dim rs Dim sSql 'Imposto la connessione Set conn = Server.CreateObject("ADODB.Connection") conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" + Server.MapPath("/mdb-database/societa.mdb") 'Imposto la stringa SQL di selezione dati Ordinando per società sSql = "SELECT * FROM societa ORDER BY soc" 'Creo e apro il Set di Record Set rs = Server.CreateObject("ADODB.Recordset") rs.Open sSql, conn, 3, 3 %> <% 'Controllo se non c'e' nessun dato (EOF=End Of File) If rs.EOF=True Then %> Nessun record trovato <% Else Do Until rs.EOF %> " onclick="return GB_show('<%=rs.Fields("soc").Value%>', '/soc/stampa.asp?id=<%=rs.Fields("id").Value%>', 550, 550)"><%=rs.Fields("soc").Value%> <% rs.MoveNext Loop End If 'Chiudo il recordset e libero la memoria rs.Close Set rs = Nothing 'Chiudo la connessione al database e libero la memoria conn.Close Set conn = Nothing %>
Ma per ogni record mi mette una lettera...codice:<% 'Cerco di mettere in ordine alfabetico Dim ThisLetter, TestLetter, TestName ThisLetter = "" %> <% 'Start of Repeat Region TestName = rs.fields.Item("soc").value TestLetter = Left(TestName,1) If ThisLetter <> TestLetter then response.write (" ") & TestLetter End if Response.Write (" ") ' volendo posso rimettere il nome della società (& TestName) 'End of Repeat Region %>
Potreste per cortesia aiutarmi.
Grazie mille!

Rispondi quotando
del resto un bimbo di tre anni non avrebbe potuto scrivere quel codice... riesci a individuare il ciclo do...loop di stampa (a video) del recordset?
