Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Suddividere dati in tabella

    Salve, dovrei suddividere dei dati richiamati da un database in colonne.

    I dati sono suddivisi per lettere quindi dovrei strutturare come segue. I dati sono suddivisi per lettera iniziale e quindi quello che vorrei ottenere è una tabella come quella qui sotto che racchiude in ogni riga dei dati.

    codice:
    
    [ A                 ][ D                 ]
    [ dati lettera A    ][ nessun dato D     ]
    [ dati lettera A    ][                   ]    
    [ B                 ][ E                 ]
    [ nessun dato B     ][ dati lettera E    ]
    [                   ][ dati lettera E    ]
    [ C                 ][ F                 ]
    [                   ][                   ]
    
    Sono riuscito ad ottenere qualcosa di simile, ma praticamente le celle non hanno la stessa altezza e alcune risultano più corte di altre e si perde tutto l'allineamento, perchè quello che ho ottenuto io sono diverse celle che contengono un'altra tabella con all'intero le righe con i dati.

    Se per esempio la lettera A ha dentro 2 dei dati e la lettera D no, la lettera E parte subito dopo la cella D e non è più allineata con la cella B.
    La cosa è un po' difficile da spiegare. Vi posto il mio codice.
    Codice PHP:
    echo '<table>
    <tr>
     <td>'
    ;
      foreach(
    $lettere as $key=>$lettera) {
       
    $n++;
       if(
    $n == ceil(count($lettere)/2)) {
        echo 
    '</td><td>';                        
       }
       echo 
    '<table>
        <tr>
         <td colspan="2">
          <div>
           <a name="' 
    $lettera '"></a>
           <h2>' 
    strtoupper($lettera) . '</h2>
          </div>
         </td>
        </tr>'
    ;
       if(
    $contents[$lettera] == 'empty') {
        echo 
    '<tr>
         <td>
          

    Nessun dato</p>
         </td>
        </tr>'
    ;
       } else {
        for(
    $k=0;$k<count($contents[$lettera]);$k++) {
         echo 
    '<tr>
          <td>
           [url="' 
    $contents[$lettera][$k]['url'] .'"]' $contents[$lettera][$k]['titolo'] . '[/url]
          </td>
          <td>'
            
    $contents[$lettera][$k]['desc'] . '
          </td>
         </tr>'
    ;
        }
       }
       echo 
    '</table>';
      }
      echo 
    '</td>
     </tr>
    </table>'

    spero che qualcuno possa aiutarmi con il mio problema..non riesco proprio a risolverlo
    La rovina del mondo sara' l'indifferenza. Ma chi se ne frega!!

  2. #2
    Posta il risultato di questo codice:

    Codice PHP:
    <?php var_export($lettere); ?>

  3. #3
    è un array contenente tutte le lettere

    $lettere
    array (
    0 => A,
    1 => B,
    2 => C
    )


    $contents

    array(
    A =>
    array(
    0 =>
    array (
    'url' => 'http://www.miosito.it/show.php?detID=27',
    'titolo' => 'Titolo',
    'desc' => 'Breve descrizione',
    ),
    1 =>
    array (
    'url' => 'http://www.miosito.it/show.php?detID=43,
    'titolo' => 'Titolo 2',
    'desc' => 'Breve descrizione 2',
    ),
    )
    La rovina del mondo sara' l'indifferenza. Ma chi se ne frega!!

  4. #4
    Per favore, posta il risultato di questo comando:

    <?php
    var_export($lettere);
    var_export($contents);
    ?>

    Non ho molta voglia di dovermi mettere a creare dei dati fittizzi solo per capire dove il tuo codice è sbagliato.

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.