tabella html con ciclo for annidato

Monital

Utente Attivo
15 Apr 2009
778
2
18
Buongiorno,

potete aiutarmi a costruire una tabella html secondo le mie esigenze?
ieri notte sono arrivato alla prima concluione dopo una giornata intera ma mi sono proprio bloccato

ho una variabile che mi resituisce questo valore come esempio

$ar=5,5,2,3;

da questa ora devo creare una tabella che abbia tante righe quanti i valori presenti in questo caso 4 e
tante colonne quanti i singoli valori della variabile quindi

righe 4
prima riga-------->5 colonne
seconda riga----->5 colonne
terza riga-------->2 colonne
quarta riga------->3 colonne

dato che con la tabella htm questo non si può fare se non usando colwspan pensavo anche dif arlo con i div ma il conceto resta uguale

io ho fatto cosi ma non funge e ho finito i tentativi

PHP:
$arr=5,5,2,3;
$ar=explode(","$arr);
$nr=count($ar)
echo "<div id="contenitore">;

for ($j = 0; $j < $count-1; $j++) {
//creo le righe
echo "<tr>"
//dato che $ar è un array quindi epr fare il ciclo per ogni colonna dovrei fare $ar[0] $ar[1] etc ho preseguito cosi
for ($i = 0; $i <= $ar[$j]; $i++) {
echo "<td>";///etc
}
echo "</tr>";
}

ma niente d a fare come giro e la volto mi crea le 4 righe ma per ogni riga mi da il $ar[$j] massimo quindi in questo caso mi da 5 colonne per ogni riga e concettualmente non sbaglia ma non è quello che mi serve.

Sicurmaente dovrò arlo con dei div ma mi manca proprio la sintassi esatta.
Suggerimenti?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, prova cosi
PHP:
<?php

$arr = "5,5,2,3";
$ar = explode(",", $arr);
$nr = count($ar);
$x = max($ar);
echo "<table border=1>";
for ($j = 0; $j < $nr; $j++) {
    echo "<tr>";
    for ($i = 0; $i < $ar[$j]; $i++) {
        $r = 1;
        if ($i == $ar[$j] - 1) {
            if ($ar[$j] < $x) {
                $r = $x - $ar[$j] + 1;
            }
        }
        echo "<td colspan='$r'>&nbsp;" . $ar[$j] . "&nbsp;</td>";
    }
    echo "</tr>";
}
echo "</table>";
?>
 
Ultima modifica:

Monital

Utente Attivo
15 Apr 2009
778
2
18
Sei un genio.

non ci ho capito molto però :D

dopo me lo studioo ben bene però non funge il colspan

e penso che non possa fungere perchè se uno degli element ad esempio è pari a 5 si creeranno 5 colonne. quindi nella riga dove sono occupate solo 3 colonne dovrebbe saltare la prima e la quinta per centrarli per dove l'elemento è pari a 4 non può unire le celle

iuso?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
si che funge il colspan
questo è l'html generato dallo script
HTML:
<table border=1>
<tr>
<td colspan='1'>&nbsp;5&nbsp;</td>
<td colspan='1'>&nbsp;5&nbsp;</td>
<td colspan='1'>&nbsp;5&nbsp;</td>
<td colspan='1'>&nbsp;5&nbsp;</td>
<td colspan='1'>&nbsp;5&nbsp;</td>
</tr>
<tr>
<td colspan='1'>&nbsp;5&nbsp;</td>
<td colspan='1'>&nbsp;5&nbsp;</td>
<td colspan='1'>&nbsp;5&nbsp;</td>
<td colspan='1'>&nbsp;5&nbsp;</td>
<td colspan='1'>&nbsp;5&nbsp;</td>
</tr>
<tr>
<td colspan='1'>&nbsp;2&nbsp;</td>
<td colspan='4'>&nbsp;2&nbsp;</td>
</tr>
<tr>
<td colspan='1'>&nbsp;3&nbsp;</td>
<td colspan='1'>&nbsp;3&nbsp;</td>
<td colspan='3'>&nbsp;3&nbsp;</td>
</tr>
</table>
ho provato ad aumentare righe e colonne
PHP:
$arr = "4,9,5,6,7,5,6,2,3,4";
guarda qui
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
ah si ok cosi

forse mi sono spegato male



seguendo il tuo esempio nella prima riga quella con il 4 vorreic he le 4 celle siano centrate rispetto la tabella.

come ad esempio una struttura piramidale.

Quindi se le colonne sono 5

|____|___|___|___|___|
|__5_|_5_|_5_|_5_|_5_|
|______3___3___3_____|
|___4____4___4___4___|

non penso sia ppssibile nelle tabelle html, ora sto provando a usare il tuo codice con il div.

quindi creare tot contenitori al post di tr e tot sottocontenitore al posto dei td ma la vedo dura.
 
Ultima modifica:

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
cosi potrebbe andare?
PHP:
<style>
    table {
       margin: auto;
    }
    table tr td {
        border: 1px solid black;
    }
</style>
<?php
$arr = "4,9,5,6,7,5,6,2,3,4";
$ar = explode(",", $arr);
$nr = count($ar);
$mx = max($ar);
echo "<table>\n";
for ($j = 0; $j < $nr; $j++) {
    echo "<tr><td>\n";
    echo "<table>";
    echo "<tr>";
    for ($i = 0; $i < $ar[$j]; $i++) {
        echo "<td>&nbsp;" . $ar[$j] . "&nbsp;</td>\n";
    }
    echo "</tr>";
    echo "</table>";
    echo "</td></tr>\n";
}
echo "</table>";
?>
creiuna tabella all'interno di ogni tr e le centi con i css
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
Grandioso.

Come ho fatto a non pensarci io ?

Grazie ciric.











O forse lo avevo già detto a borgo? :confused:
 
Discussioni simili
Autore Titolo Forum Risposte Data
M Riportare in tabella HTML dati estratti con query SQL MySQL 0
S [HTML] Tabella con intestazione verticale HTML e CSS 4
D [HTML] Problema con Dreamweaver; 1) tabella con larghezza 100% 2) Immagine che si adatta a Div HTML e CSS 28
9 eliminare righe di una tabella con form html PHP 6
V Tabella html dinamica con php PHP 4
L Creazione tabella Html con popolazione dati da file di testo (txt) Ajax 12
I Riga tabella HTML creata con cicli PHP e Query Sql che restituisca un campo se si clicca la Riga PHP 4
M listing dati da database a tabella html con php PHP 4
W Problemi con filtro tabella HTML Javascript 0
Monital script per modifica css con tabella colori html PHP 6
V BOX fatto con tabella HTML da trasformare in XHTML HTML e CSS 6
felino Esportare tabella HTML in PDF, quale libreria usare? Javascript 1
F [PHP] [HTML] Tabella cambia pagina responsive PHP 8
M [PHP] [HTML] Centrare in verticale un pulsante in una tabella PHP 3
D [HTML] Aiutino su costruzione tabella :) HTML e CSS 3
K [Javascript] [HTML] Invertire colori alternati in tabella Javascript 3
B [HTML] tabella al centro pagina HTML e CSS 3
R [HTML] Aggiungere una tabella a fianco di altre tabelle... HTML e CSS 6
L intestazione di tabella HTML continua a ripetere per ogni riga della tabella PHP 5
M Caratteri HTML salvati nella tabella PHP 4
G Da file txt a tabella html PHP 11
9 caricare immagini in tabella html da cartella sul server tramite id database PHP 1
F Tabella HTML PHP 5
filippino Tabella dei colori HTML HTML e CSS 1
JackIlPazzo Come estrarre codice da tabella html? PHP 4
S tabella dinamica php html PHP 2
filippino tabella HTML: altezza cella fissa HTML e CSS 1
Z [VB.NET] Leggere pagina HTML ed estrarre dati da tabella .NET Framework 1
Marcolotto [HTML] Colore bordo tabella HTML e CSS 2
S Da form sotto forma di tabella html a mysql PHP 6
G rilevare il valore di una cella in una tabella html al click del mouse. Javascript 4
A Allineare due colonne in una tabella HTML PHP 6
C Cambiare i colori alle celle di una tabella html in modo sequenziale Javascript 32
C Javascript completo di html per creare una tabella dove compare il saluto in base all'ora. Javascript 2
C Inserire Valori Da Un File Js In Una Tabella Html Javascript 19
Monital Modificare una funzione per creazione tabella html PHP 15
Athene Interazione tra il foreach e una tabella html PHP 12
E Trasferire i dati da una tabella html in un tabella PHP 2
P Compilare un modulo HTML da una tabella di access Programmazione 0
L Tabella HTML e richiamo della funzione PHP 7
D Esportare una tabella html su excel PHP 5
M Come estarre da una tabella html i valori di una riga selezionata PHP 15
D Tabella html da query mysql a modo mio PHP 5
A tabella html in php PHP 1
B leggere dati da tabella html PHP 0
V Come trasformare correttamente una tabella HTML HTML e CSS 6
N Popolamento di una tabella html a 2 colonne da database Classic ASP 1
W Pagina HTML si IE (Prb. tabella) HTML e CSS 9
D Miglior modo per estrarre le occorrenze di un elemento in un set di più file xml e quindi scrivere il risultato in una tabella Excel o magari in JSON XML 0
S da casella di testo a campo tabella Database 0

Discussioni simili