Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    461

    ciclo che stampa dati in tabella

    ciao a tutti!
    devo riuscire a risolvere un problema con un ciclo che mi stampa dei dati entro dei td e che ogni 5 td mi deve chiudere la riga e andare a capo....e fin qui ci sono senza problemi...il mio problema è che arrivato alla fine del ciclo se l'ultimo dato stamapto non chiude una riga...(quindi ad esempio rimane come terzo di una riga)devo dirgli di creare i td rimanenti per chiudere una riga creando td vuoti tanti quanto ne necessitano appunto per completare la riga finale...
    avevo pensato a una condizione che dice:

    if (ubound(arrPro) mod 5)<> 0 then
    ubound(arrPro)=ubound(arrPro)+1
    end if

    pero non so dove potrei mettere questa condizione...sicuramente in un ciclo ma non saprei come strutturarlo..

  2. #2
    Mostra il codice completo.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    461
    <table border="1" width="100%">
    <tr>
    <%sql="SELECT * FROM PRODOTTO WHERE OFFERTA='si'"
    aprirs sql
    do until rs.eof
    strPro=strPro&","&rs("codice")
    rs.movenext
    loop
    arrPro=split(strPro,",")
    for i=1 to ubound(arrPro)
    %>

    <td>

    <%=arrPro(i)%></p></td>
    <%
    if ( i mod 5)=0 then%>
    </tr>
    <tr>
    <%
    end if
    next
    %>
    </tr>

    </table>

  4. #4
    puoi comunque fare un controllo alla fine di ogni stampa. Ad esempio se l'ultimo dato è nella seconda colonna, nella parte di codice potresti inserire :

    codice:
    <% ' ultimo dato?
    if rs.eof then
    response.Write("</td><td></td>...</tr>")
    end if
    %>
    Ciau!
    - Dean

  5. #5
    codice:
    <table border="1" width="100%">
    <tr>
    <%sql="SELECT * FROM PRODOTTO WHERE OFFERTA='si'"
    aprirs sql
    do until rs.eof
    strPro=strPro&","&rs("codice")
    rs.movenext
    loop
    arrPro=split(strPro,",")
    ciclo = 1
    max = 5
    for i=1 to ubound(arrPro)
    %>
    
    <td>
    
    <%=arrPro(i)%></p></td>
    <%
    if ciclo = max then
    ciclo = 1
    %>
    </tr>
    <tr>
    <%
    else
    ciclo = ciclo + 1
    end if
    next
    
    for x = ciclo to (max + 1)
    %>
    <td> </td>
    <%
    next
    %>
    </tr>
    
    </table>

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    461
    thanks!
    pero o tolto al posto che

    for x = ciclo to (max +1)

    o tolto il +1 perche mi stampava un td vuoto in piu'.

  7. #7
    Originariamente inviato da stewe19
    thanks!
    pero o tolto al posto che

    for x = ciclo to (max +1)

    o tolto il +1 perche mi stampava un td vuoto in piu'.
    Bene.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.