Visualizzare un array in una tabella

fonzyyyyyyy

Nuovo Utente
12 Set 2005
6
0
0
Mettiamo di avere un array di 20 elementi e volerlo visualizzare in una tabella di 4 X 4 elementi.

Avevo pensato di creare due cicli di for uno dentro l'altro in questo modo:

$Numero = 20;
echo"<table border='0' cellpadding='2' cellspacing='2'>";
for($i=0;$i<$Numero;$i++)
{
echo"<tr>";
for($n=0;$n<4;$n++)
{
echo"<td>";
echo"$i";
echo"</td>";
}
echo"</tr>";
}
echo"</table>";

Ovviamente però non funziona...mi crea 2 colonne con gli stessi 20 elementi.
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
cosi dovrebbe funzionare:
PHP:
<?
$array = array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19);
//contiamo i valori dell'array (un pò come il tuo 20)
$numero = count($array);

//stampiano la tabella
echo "<table>\n";
for ($i = 0; $i <= $numero - 1; $i++)
{

//numero delle colonne
if ($col == ceil($numero / 4))
{
$col = 0;
echo " </tr>\n";
echo " <tr>\n";
}

//stampa dei valori
echo " <td>" . $array[$i] . "</td>\n";
$col++;
}
echo "</table>\n";
?>

Il vantaggio è che ti basterà modificare:
PHP:
$col == ceil($numero / 4)

in 3 o come vuoi per ottenere senza sforzo un diverso incolonnamento.
:byebye:
 

coccobil

Utente Attivo
28 Ott 2005
36
0
6
e se...

Salve a tutti.:byebye:

dicevo, e se volessi visualizzare dei dati provenienti da una selezione tramite un checkbox?
mi spiego:
ho n valori in una tabella di un db mysql e li porto a video con una select, poi inserisco un checkbox che mi permette di selezionarne alcuni, infine quelli selezionati vanno ad una pagina che li incolonna in tabelle:
ecco il codice:
prelabels.php (preleva i dati per selezionarli)
PHP:
<?php
......
echo "<table border=1 bordercolor=black width=100% cellspacing=0 cellpadding=2>\n";
echo "<tr bgcolor=#66FF99>\n";
echo "<th align=right><font face=verdana size=-2><nobr><center>id</center></nobr></font></th>\n";
echo "<th align=center><font face=verdana size=-2><nobr><center>Cognome e Nome o Ragione Sociale</center></nobr></font></th>\n";
echo "<th align=left><font face=verdana size=-2><nobr><center>Titolo</center></nobr></font></th>\n";
echo "<th align=center><font face=verdana size=-2><nobr>Persona F/G</a></center></nobr></font></th>\n";
echo "<th align=center><font face=verdana size=-2><nobr><center>Figura</nobr></a></center></font></th>\n";
echo "<th align=right><font face=verdana size=-2><nobr><center>Tipologia</a></center></nobr></font></th>\n";
echo "<th align=right><font face=verdana size=-2><nobr><center>Ufficio di Competenza</a></center></nobr></font></th>\n";
echo "<th align=right><font face=verdana size=-2><nobr><center>Note</center></nobr></font></th>\n";
echo "<th align=right><font face=verdana size=-2><nobr><center>Selezione</center></nobr></font></th>\n";
echo"</tr>\n";
?>
<SCRIPT LANGUAGE="JavaScript">
function check(field)
{
for (i = 0; i < field.length; i++)
{
field[i].checked = true;
}
}
function decheck(field)
{
for (i = 0; i < field.length; i++)
{
field[i].checked = false;
}
}
</script>
<? 
echo "<form name=\"formmail\" method=\"post\" action=\"labels.php\">";
$i = 1;
	while ($row = mysql_fetch_array($result)) {
		echo "<tr align=top bgcolor=\"yellow\">\n";
echo "<td align=right><font face=verdana size=-2>$row[id]</font></td>\n";
echo "<td align=center><font face=verdana size=-2>$row[Cognome_e_Nome]</font></td>\n";
echo "<td align=center><font face=verdana size=-2>$row[Titolo]</font></td>\n";
echo "<td align=right><font face=verdana size=-2>$row[Persona_Fisica_Giuridica]</font></td>\n";
echo "<td align=center><font face=verdana size=-2>$row[Figura]</font></td>\n";	
echo "<td align=center><font face=verdana size=-2>$row[Tipologia]</font></td>\n";	
echo "<td align=center><font face=verdana size=-2>$row[Ufficio_Competenza]</font></td>\n";
echo "<td align=center><font face=verdana size=-2>$row[Note]</font></td>\n";
echo "<td align=left><input type=\"checkbox\" name=\"check_$i\"><input type=button value=\"A\" onClick=\"check(formmail)\"<input type=button value=\"N\" onClick=\"decheck(formmail)\"></td>\n";
echo "<input type=\"hidden\" name=\"Titolo_$i\" value=\"$row[Titolo]\">";
echo "<input type=\"hidden\" name=\"Nome_$i\" value=\"$row[Cognome_e_Nome]\">";
echo "<input type=\"hidden\" name=\"Indirizzo_$i\" value=\"$row[Indirizzo]\">";
echo "<input type=\"hidden\" name=\"Citta_$i\" value=\"$row[Citta]\">";
echo "<input type=\"hidden\" name=\"Provincia_$i\" value=\"$row[Provincia]\">";
echo "<input type=\"hidden\" name=\"CAP_$i\" value=\"$row[CAP]\">";
$i++;
	}
	echo "</table>";  
	echo "</font></td></tr>\n\n";
	echo "<p><input type=\"submit\" name=\"invia\" value=\"  INVIA  \"></p>";
    echo "</form>";
	@mysql_free_result ($result); 
?>

labels.php (crea le etichette per la stampa):

PHP:
<?
foreach (array_keys($_POST) as $key){ 
    //controllo che la chiave sia "check" e sia impostata ad on 
    if (eregi("^check_", $key) and $_POST[$key] == 'on'){ 
        //Seleziono tutti i valori degli elementi selezionati 
        $myVar = $_POST[ereg_replace("check", "Titolo", $key)]; 
        $myVar2 = $_POST[ereg_replace("check", "Nome", $key)]; 
        $myVar3 = $_POST[ereg_replace("check", "Indirizzo", $key)]; 
        $myVar4 = $_POST[ereg_replace("check", "Citta", $key)]; 
        $myVar5 = $_POST[ereg_replace("check", "Provincia", $key)]; 
        $myVar6 = $_POST[ereg_replace("check", "CAP", $key)]; 
        $etichetta="<b><font size=\"2\" face=\"Verdana\">$myVar</font></b><br />"."<b><font size=\"2\" face=\"Verdana\">$myVar2</font></b><br />"."<b><font size=\"2\" face=\"Verdana\">$myVar3</font></b><br />"." <b><font size=\"2\" face=\"Verdana\">$myVar6</font></b>"."  "."<b><font size=\"2\" face=\"Verdana\">$myVar4 (</font></b>"."<b><font size=\"2\" face=\"Verdana\">$myVar5)</font></b><br />";
        echo $etichetta;
    } 
} /*e ora come inserisco le varie etichette nelle tabelle ?:-) */
?>
Grazie del preziosissimo aiuto
 

coccobil

Utente Attivo
28 Ott 2005
36
0
6
Ciao Eliox e benritrovato..(non so se ti ricordi, ho fatto il tuo corso di php, ma da buon principiante faccio ancora fatica certe volte....A proposito, a quando un bel corso avanzato? Magari videocorso...:book: )
Quanto alle etichette, direi così:

etichette.jpg


Grazie mille...davvero di cuore.
Ciao da Massimo
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Ciao Coccobil,
certo che mi ricordo di te! Per l'avanzato di PHP avrai presto notizie! Ma non ti posso dire di più sennò Luke mi scanna.:rolleyes:

per quanto rigurada l'incolonnamento puoi sfruttare un ciclo:
PHP:
$colonne = 3;

$query = "SELECT dato FROM dati ORDER BY id";
$result = mysql_query($query);

$num_rows = mysql_num_rows($result);
echo "<TABLE>\n";

for($i = 0; $i < $num_rows; $i++) {
    $row = mysql_fetch_array($result);
    if($i % $colonne == 0) {

        echo "<tr>\n";
    }
    echo "<td>" . $row['dato'] . "</td>\n";
    if(($i % $colonne) == ($colonne - 1) || ($i + 1) == $num_rows) {
        
        echo "</tr>\n";
    }
}
echo "</table>\n";

:byebye:
 

coccobil

Utente Attivo
28 Ott 2005
36
0
6
Bene bene....mi piace l'idea di approfondire..;)
Per le tabelle, sai qual'è il problema?che non prelevo direttamente i dati dal db ma prima ne faccio una selezione con un checkbox:
(ho inserito il codice nel post precedente e come vedi)

prelabels.php
PHP:
<?
echo "<form name=\"formmail\" method=\"post\" action=\"labels.php\">";
$i = 1;
    while ($row = mysql_fetch_array($result)) {
        echo "<tr align=top bgcolor=\"yellow\">\n";
echo "<td align=right><font face=verdana size=-2>$row[id]</font></td>\n";
echo "<td align=center><font face=verdana size=-2>$row[Cognome_e_Nome]</font></td>\n";
echo "<td align=center><font face=verdana size=-2>$row[Titolo]</font></td>\n";
echo "<td align=right><font face=verdana size=-2>$row[Persona_Fisica_Giuridica]</font></td>\n";
echo "<td align=center><font face=verdana size=-2>$row[Figura]</font></td>\n";    
echo "<td align=center><font face=verdana size=-2>$row[Tipologia]</font></td>\n";    
echo "<td align=center><font face=verdana size=-2>$row[Ufficio_Competenza]</font></td>\n";
echo "<td align=center><font face=verdana size=-2>$row[Note]</font></td>\n";
/*QUI SELEZIONO INDICIZZANDO----->*/ echo "<td align=left><input type=\"checkbox\" name=\"check_$i\">[/B]<input type=button value=\"A\" onClick=\"check(formmail)\"<input type=button value=\"N\" onClick=\"decheck(formmail)\"></td>\n";
echo "<input type=\"hidden\" name=\"Titolo_$i\" value=\"$row[Titolo]\">";
echo "<input type=\"hidden\" name=\"Nome_$i\" value=\"$row[Cognome_e_Nome]\">";
echo "<input type=\"hidden\" name=\"Indirizzo_$i\" value=\"$row[Indirizzo]\">";
echo "<input type=\"hidden\" name=\"Citta_$i\" value=\"$row[Citta]\">";
echo "<input type=\"hidden\" name=\"Provincia_$i\" value=\"$row[Provincia]\">";
echo "<input type=\"hidden\" name=\"CAP_$i\" value=\"$row[CAP]\">";
$i++;
    }
    echo "</table>";  
    echo "</font></td></tr>\n\n";
    echo "<p><input type=\"submit\" name=\"invia\" value=\"  INVIA  \"></p>";
    echo "</form>";
    @mysql_free_result ($result);
?>

che punta a labels.php che recupera i dati sulla base dei checkbox selezionati:

PHP:
<?
/*QUI RICHIAMO IL SELEZIONATO ------>*/foreach (array_keys($_POST) as $key){
    //controllo che la chiave sia "check" e sia impostata ad on
    if (eregi("^check_", $key) and $_POST[$key] == 'on'){
        //Seleziono tutti i valori degli elementi selezionati[/B]
        $myVar = $_POST[ereg_replace("check", "Titolo", $key)];
        $myVar2 = $_POST[ereg_replace("check", "Nome", $key)];
        $myVar3 = $_POST[ereg_replace("check", "Indirizzo", $key)];
        $myVar4 = $_POST[ereg_replace("check", "Citta", $key)];
        $myVar5 = $_POST[ereg_replace("check", "Provincia", $key)];
        $myVar6 = $_POST[ereg_replace("check", "CAP", $key)];
        $etichetta="<b><font size=\"2\" face=\"Verdana\">$myVar</font></b><br />"."<b><font size=\"2\" face=\"Verdana\">$myVar2</font></b><br />"."<b><font size=\"2\" face=\"Verdana\">$myVar3</font></b><br />"." <b><font size=\"2\" face=\"Verdana\">$myVar6</font></b>"."  "."<b><font size=\"2\" face=\"Verdana\">$myVar4 (</font></b>"."<b><font size=\"2\" face=\"Verdana\">$myVar5)</font></b><br />";
        echo $etichetta;
    }
} /*e ora come inserisco le varie etichette nelle tabelle ?:-) */
?>

quindi nelle tabelle andranno inserite solo gli elementi selezionati che ho trasformato in etichette, ma appunto non so come fare.
Comunque anche l'altro codice che hai postato fa comodo, ne faccio una libreria :)

Grazie infinite!
:byebye:
Max
 
Discussioni simili
Autore Titolo Forum Risposte Data
M [PHP] Visualizzare un array partendo dal numero 1 e non 0 PHP 5
L come visualizzare array di oggetti php PHP 9
I visualizzare lista utenti registrati PHP 1
N php problemi a visualizzare video PHP 3
P come posso visualizzare l'nvr online IP Cam e Videosorveglianza 0
K Visualizzare del html responsive in una Webview Sviluppo app per Android 0
M Visualizzare ultima data registrata MS Access 2
G Numero zero null non deve visualizzare nulla PHP 0
D visualizzare solo foto filtrate jQuery 1
M Visualizzare nuove domande in base a risposta precedente PHP 0
N Non Autorizzato. Dovresti rimuovere il parametro customize_messenger_channel per visualizzare l'anteprima in frontend. WordPress 1
M visualizzare ip cam in windows IP Cam e Videosorveglianza 0
W visualizzare solo file html e sottocartelle di una cartella PHP 1
napuleone visualizzare il codice senza usare gli & HTML e CSS 1
Y Come caricare e visualizzare un'immagine PHP 0
M Visualizzare file PDF con link preso dal DB PHP 0
Alex_70 Visualizzare 2 bandiere PHP 6
Alex_70 Visualizzare anteprima foto in dropdown PHP 2
L Visualizzare tabella all'interno finestra modal PHP 4
P Visual Studio VB.NET Visualizzare un messaggio alla scadenza. .NET Framework 0
J [PHP] Visualizzare risultato query stessa pagina PHP 3
B visualizzare una sola riga Database 3
Alex_70 [PHP] Visualizzare foto tramite select PHP 0
K [ASP] Visualizzare nome del file selezionato Classic ASP 3
L [PHP] Visualizzare utente dopo login PHP 0
L [PHP] Visualizzare se una pagina è pingata PHP 1
M [PHP] Visualizzare nell'alert il calcolo PHP 4
D [WordPress] come fare per estrarre dati da un db MySQL tramite una form e visualizzare il risultato WordPress 0
S [PHP] visualizzare commento su un prodotto precedentemente selezionato PHP 2
V [Javascript] Visualizzare o nascondere div figlio Javascript 4
W [PHP] Visualizzare errori su Statements in MySQLi PHP 3
S [javascript] visualizzare/nascondere div Javascript 3
felino [Javascript] [jQuery] Slick Carousel: visualizzare una porzione dell'immagine successiva Javascript 0
W [Javascript] Visualizzare l'href di un link nascosto Javascript 0
L [HTML] Problemi a visualizzare le modifiche eseguite alle pagine del sito. HTML e CSS 2
G [HTML] Visualizzare iframe in un blog non funziona sempre xchė? HTML e CSS 3
tritabit [HTML] Visualizzare stelle tipo rating HTML e CSS 5
A Visualizzare div quando le immagini sono state uploadate con successo (Ajax) Ajax 0
T Visualizzare un Xml su un sito in modo semplice XML 1
F Visualizzare data in formato gg/mm/aaaa da database mysql. PHP 3
M [PHP] Visualizzare record nel db PHP 2
M Visualizzare immagini in PHP - MYSQL PHP 0
M Visualizzare immagini da DB in php PHP 0
ecosito [WordPress] Visualizzare una mappa con i pin dei post tramite GPS? WordPress 4
G [PHP] CodeIgniter - Visualizzare singolo risultato PHP 4
Y VISUALIZZARE IMMAGINI DA DB PHP/MYSQL PHP 7
trattorino [PHP] funzione per visualizzare solo carattere PHP 2
S [HTML] Visualizzare XML formattato in HTML HTML e CSS 9
M Visualizzare su più pagine risultato query con fpdf PHP 6
Mer556 Visualizzare un sito nel browser HTML e CSS 1

Discussioni simili