Il problema è questo: ho un database con dei prodotti, con dei campi (per esempio) “nome”, “descrizione”, “immagine”.


Sono riuscito ad estrarre dal database tutti i dati ed ottengo una tabella con un elenco dei prodotti. In questo caso vengono mostrati solo i record dove, nella tabella del database “visibile”, c’è 1. E ne vengono mostrati tanti quanti indicati nella tabella del database “numero”.

Quello che voglio però non è un elenco di prodotti per riga, ma una distribuzione dei record diversa, tipo:
- Se sono sei prodotti: 2 prodotti per riga, quindi 3 righe
- Se sono sette prodotti: 2 prodotti per riga + 1 riga con un prodotto, quindi 4 righe.

Spero di essermi spiegato.

Qualche idea?


Questo è il codice della pagina elenco_prodotti.asp

codice:
<html>
<head>
<title>Catalogo prodotti</title>
</head>
<body>
<%
set rsOldprodotto = connect.execute("select id, nome, descrizione, data from prodotti where visibile=1 order by data DESC")
set rsnumero = connect.execute ("select inumero from numero")
intNumero=rsnumero("inumero")
alignment="right"
numero=0
If rsOldprodotto.EOF then
Response.Write("Non ci sono prodotti disponibili")
Else
do until rsOldprodotto.eof or numero = intnumero
%>

<table width="90%" border="0" align="center">
  <tr> 
    <td align="center" class="testo_frame"><% =rsOldprodotto("nome") %></td>
  </tr>
  <tr> 
    <td class="testo">
    <div align="right">
    " target="_top">[segue]
    </div>
    </td>
  </tr>
</table>

<% 
numero=numero+1
rsOldprodotto.movenext
loop
rsOldprodotto.close
set rsOldprodotto = nothing 
rsnumero.close
 set rsnumero = nothing
%>

<% End IF %>
</body>
</html>
Il file prodotto.asp mi mostra il dettaglio dei prodotti.