Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1

    stampa record su più tabelle

    Ciao a tutti, ho fatto una ricerca sul forum ma non ho trovato una soluzione al mio problema:

    Ho una tabella (db MySql) con 6 campi.
    conto quante record ci sono nella nella tabella (Es. 11 righe)

    una volta estratti tutti i dati, vorrei stampare i dati contenuti nella tabella, in tabelle formate da 3 righe e 3 colonne.

    esempio: supponendo che in totale la tabella mysql abbia 11 righe, dovrei stampare a video tre tabelle da 3righe e 3colonne e una tabella da 2 righe e 3 colonne.

    più o meno così..

    codice:
    <table>
      <tr>
        <td>---</td>
        <td>---</td>
        <td>---</td>
      </tr>
      <tr>
        <td>---</td>
        <td>---</td>
        <td>---</td>
      </tr>
      <tr>
        <td>---</td>
        <td>---</td>
        <td>---</td>
      </tr>
    </table>
    
    
    ....seconda tabella
    
    
    ..terza tabella
    
    ...


    nella prima tabella saranno contenuti i record con id da 1 a 3 nella seconda i record con id da 4 a 6 e via dicendo.

    C'è qualcuno che può darmi un'idea su come generare il codice?

    Grazie 1000 a tutti!
    --- Meglio 100 giorni da leone che 1 da pecora ---

  2. #2
    Scusami un momento ma non va bene una tabella da 11 righe? Perchè se va bene forse posso aiutarti!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  3. #3
    mi spiace ma questa soluzione l'ho provata e non ottengo il risultato che voglio.

    mi serve un aiuto per soluzione come l'ho postata sopra, spero di aver postato il problema abbastanza chiaramente

    Grazie!!
    --- Meglio 100 giorni da leone che 1 da pecora ---

  4. #4
    Si, hai postato chiarissimo però potresti specificare un po' meglio cosa vuoi ottenere? Cioè, alla fine o crei una tabella con 9 righe e tre colonne e una con 2 righe e tre colonne o ne crei una con 11 righe e tre colonne cosa cambia? Perchè non va bene per quello che devi fare? Scusami, non voglio impicciarmi, è solo che può darsi che ci sia una soluzione! Perchè per fare quello che vuoi fare tu non so proprio come fare!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  5. #5
    Ecco risolto il problema come volevi tu. Ci ho dovuto pensare un po' ma alla fine ce l'ho fatta. Credo funzioni.
    codice:
    $i = 1;
    echo "<table width=\"100%\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tr>\n";
    for ($count = 0; $count < 11; $count++)
       {
          echo "<td>campo" . $count . "</td>\n";
          if ($i % 3 == 0)
            {
    	   echo "</tr>\n</table>\n\n<table width=\"100%\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tr>\n";
            }
          $i++;
       }
    echo "</tr>\n<table>\n";
    Ovviamente al posto del for devi mettere il while con cui processi i risultati della query. Ciao.

    PS se vuoi provare il codice copia e incolla quello che ti ho postato. Ciao
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  6. #6
    ciao mircov!
    grazie per il codice, adesso provo poi ti faccio sapere.

    il motivo per cui voglio una soluzione del genere è questo:

    devo stampare su carta tutti i record di una tabella mysql.
    siccome non conosco per niente "css" ho pensato, attraverso php, di stampare i dati su tanti tabelle con dimensioni, righe e colonne da me definite, (e create in base al numero di record effettivamente contenuti nella tabella mysql).

    Utilizzando poi questo codice..

    codice:
    <style type="text/css" media="print">
    <!--
    table { page-break-after: always }
    -->
    </style>

    ..quando lancio la stampa su carta le righe delle tabelle non vengono spezzate (proprio perchè alla fine di ogni tabella viene stampata una nuova pagina)

    Come soluzione è super macchinosa.
    però purtroppo per adesso non mi viene in mente nessun altra alternativa.
    Se hai degli altri consigli posta pure!!

    grazie ancora per l'aiuto!
    a tra poco per il risultato!

    --- Meglio 100 giorni da leone che 1 da pecora ---

  7. #7
    Ricordo di aver letto da qualche parte che si poteva definire tramite css quando interrompere la stamap di una pagina per cominciarne una nuova. Si inseriva qualcosa nella pagina nel punto in cui si voleva cominciasse la nuova pagina ma dovresti postare su html e non qui su php.
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  8. #8
    su html ci ho già postato, ma picche.. la spiegazione massima che ho avuto è stata "css print.."

    puoi dare un'occhiata QUI . C'è un esempio di quello che voglio ottenere!

    Grazie mircov!
    --- Meglio 100 giorni da leone che 1 da pecora ---

  9. #9
    Ho capito. E va bè, per ottenere quello il codice te l'ho dato. Devi solo modificarlo un po'.
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  10. #10
    Ecco, l'ho fatto io per te:
    codice:
    <table width="600" border="1" cellpadding="3" cellspacing="0" bordercolor="000000">
      <tr>
        <td width="200" height="50">ID</td>
        <td width="200">NOME</td>
        <td width="200">COGNOME</td>
      </tr>
    <?PHP
    $i = 1;
    for ($count = 0; $count < 11; $count++)
       {
          echo "<tr>\n
                  <td height=\"50\">" . $count . "</td>\n
                  <td>Nome " . $count . "</td>
                  <td>Cognome " . $count . "</td>
                </tr>";
          if ($i % 3 == 0)
            {
    	   echo "</table>\n
    <table width=\"600\" border=\"1\" cellpadding=\"3\" cellspacing=\"0\" bordercolor=\"000000\">\n
                     <tr>\n
                       <td width=\"200\" height=\"50\">ID</td>\n
                       <td width=\"200\">NOME</td>\n
                       <td width=\"200\">COGNOME</td>\n
                     </tr>\n";
            }
          $i++;
       }
    ?>
    </table>
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.