<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[celle dinamiche]]></title><description><![CDATA[<p dir="auto">Ciao a tutti ho n piccolo problemino.<br />
Sto creando delle righe e celle dinamiche,<br />
una cosa che in futuro potrebbe servire . Avendo ad esempio 7 record in un db, voglio che mi crei una tabella con 2 celle(TD) e tante righe(TR) quanti record ho nel db<br />
Ho provato prima a farlo statico e va bene, quando lo faccio dinamico non mi trovo più con i conti. Vi posto il codice<br />
[PHP]<br />
&lt;table border="1" cellpadding="0" cellspacing="0"&gt;<br />
&lt;?php<br />
$result_query_1=mysql_query("SELECT * FROM video ORDER BY id_video desc")<br />
or die("errore nella query;".mysql_error());<br />
$a=0;<br />
for($b = 0; $b &lt; mysql_num_rows($result_query_1); $b++)<br />
{<br />
print"<br />
&lt;tr&gt;";<br />
for($c = 0; $c &lt; 2; $c++, $a++)<br />
{<br />
$vid=mysql_fetch_assoc($result_query_1);<br />
print"<br />
&lt;td valign='top' height='15'&gt;<br />
$vid[percorso]<br />
&lt;/td&gt;";<br />
print"<br />
&lt;td width='6'&gt;&lt;/td&gt;";<br />
}<br />
print"<br />
&lt;/tr&gt;";<br />
print"<br />
&lt;tr&gt;";<br />
print"<br />
&lt;td height='6'&gt;&lt;/td&gt;";<br />
print"<br />
&lt;/tr&gt;";<br />
}</p>
<pre><code>?&gt;
</code></pre>
<p dir="auto">&lt;/table&gt;<br />
[/PHP]<br />
Non da nessun errore di codice, il risultato che mi da è strano<br />
nel db ci sono 7 record lui li moltiplica per 2 e mi restituisce 14 celle di cui 7 piene e 7 vuote<br />
Normale non è! Mi date un aiuto<br />
Grazie da danny1975</p>
]]></description><link>https://connect.gt/topic/111710/celle-dinamiche</link><generator>RSS for Node</generator><lastBuildDate>Sun, 05 Apr 2026 02:02:21 GMT</lastBuildDate><atom:link href="https://connect.gt/topic/111710.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 04 Oct 2009 14:25:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to celle dinamiche on Sun, 04 Oct 2009 20:40:06 GMT]]></title><description><![CDATA[<p dir="auto">In sostanza, prima di iniziare il ciclo, definisco una variabile di conteggio ( "$i", nel mio caso ).</p>
<p dir="auto">Nel ciclo viene stampata sempre una cella con l'informazione recuperata da database, subito dopo questo print c'è un controllo: verifico se la variabile di conteggio diviso due mi restituisce come resto della divisione 0.</p>
<p dir="auto">Questo significa che la condizione sarà quindi verificata ogni quando il contatore conterrà un numero pari (e quindi, logicamente parlando, ogni due numeri).</p>
<p dir="auto">Ovviamente, alla fine di ogni giro del ciclo poi incremento il contatore <img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/android/1f609.png?v=5l94qfpgdvn" class="not-responsive emoji emoji-android emoji--wink" title=";-)" alt="😉" /></p>
<p dir="auto">Se vuoi invece usare un for ti consiglio, per una questione di ottimizzazione, di istanziare la funzione mysql_num_rows in una variabile esterna alla dichiarazione del ciclo poichè, altrimenti, ad ogni verifica della condizione essa viene rieseguita.</p>
<p dir="auto">[php]$sql = mysql_query(".....");<br />
$rows = mysql_num_rows($sql);</p>
<p dir="auto">for ($i = 0; $i &lt; $rows; ++$i)<br />
{<br />
....[/php]</p>
<p dir="auto">Ad ogni modo, puoi decidere di stampare più celle per riga semplicemente stabilendo di restituire il resto di una divisione per un altro numero qualsiasi a tua scelta <img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/customizations/54a3bffb-5e4a-4eb8-81dc-99b2072e5d05-175.gif?v=5l94qfpgdvn" class="not-responsive emoji emoji-customizations emoji--ciauz" title=":ciauz:" alt=":ciauz:" /></p>
]]></description><link>https://connect.gt/post/861372</link><guid isPermaLink="true">https://connect.gt/post/861372</guid><dc:creator><![CDATA[blancks]]></dc:creator><pubDate>Sun, 04 Oct 2009 20:40:06 GMT</pubDate></item><item><title><![CDATA[Reply to celle dinamiche on Sun, 04 Oct 2009 20:27:55 GMT]]></title><description><![CDATA[<p dir="auto">Ciao e grazie.<br />
Funziona benissimo ed era quello che intendevo fare,<br />
ma anche con i commenti non riesco a comprendere bene i passaggi.<br />
Adesso cerco di leggerli meglio e di fare la stessa cosa con un ciclo for.<br />
Grazie da danny1975</p>
]]></description><link>https://connect.gt/post/861369</link><guid isPermaLink="true">https://connect.gt/post/861369</guid><dc:creator><![CDATA[danny1975]]></dc:creator><pubDate>Sun, 04 Oct 2009 20:27:55 GMT</pubDate></item><item><title><![CDATA[Reply to celle dinamiche on Sun, 04 Oct 2009 20:13:49 GMT]]></title><description><![CDATA[<p dir="auto">Concettualmente è semplice, ad ogni giro del ciclo che riporta i risultati della query controlli se il resto di una divisione per due del contatore è uguale a zero, in quel caso printi i comandi di fine e inizio riga.<br />
Ti posto un esempio pratico a livello concettuale di ciò che intendo:</p>
<p dir="auto">[php]<br />
echo "&lt;table&gt;";<br />
echo "&lt;tr&gt;";</p>
<p dir="auto">$i = 1; # variabile di conteggio</p>
<p dir="auto">$result = mysql_query("....");<br />
while ($row = mysql_fetch_array($result)) # ciclo risultati query<br />
{<br />
echo "&lt;td&gt;".$row['percorso']."&lt;/td&gt;";</p>
<pre><code>if ($i%2 == 0)    # verifico se stiamo stampando il secondo record della riga
    echo "&lt;/tr&gt;&lt;tr&gt;";

++$i;  # incremento del contatore
</code></pre>
<p dir="auto">}</p>
<p dir="auto">echo "&lt;/tr&gt;";<br />
echo "&lt;/table&gt;";<br />
[/php]Spero di essere riuscito a spiegarmi in maniera sufficientemente chiara, se ci sono altri dubbi o risolvi fammi sapere <img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/customizations/54a3bffb-5e4a-4eb8-81dc-99b2072e5d05-175.gif?v=5l94qfpgdvn" class="not-responsive emoji emoji-customizations emoji--ciauz" title=":ciauz:" alt=":ciauz:" /></p>
]]></description><link>https://connect.gt/post/861370</link><guid isPermaLink="true">https://connect.gt/post/861370</guid><dc:creator><![CDATA[blancks]]></dc:creator><pubDate>Sun, 04 Oct 2009 20:13:49 GMT</pubDate></item><item><title><![CDATA[Reply to celle dinamiche on Sun, 04 Oct 2009 19:20:00 GMT]]></title><description><![CDATA[<p dir="auto">Ciao<br />
forse io non mi sono spiegato bene e mi scuso<br />
Il codice che mi hai scritto stampa un elenco in verticale tipo<br />
numero_1<br />
numero_2<br />
numero_3 ecc<br />
io invece sto cercando di ottenere un risultato diverso<br />
numero_1 / numero_2<br />
numero_3 / numero_4<br />
numero_5 / ecc</p>
<p dir="auto">ciao da danny</p>
]]></description><link>https://connect.gt/post/861365</link><guid isPermaLink="true">https://connect.gt/post/861365</guid><dc:creator><![CDATA[danny1975]]></dc:creator><pubDate>Sun, 04 Oct 2009 19:20:00 GMT</pubDate></item><item><title><![CDATA[Reply to celle dinamiche on Sun, 04 Oct 2009 16:11:29 GMT]]></title><description><![CDATA[<p dir="auto">Perchè fai due for annidati?</p>
<p dir="auto">Non sarebbe più facile una cosa del genere:</p>
<p dir="auto">[php]<br />
$result = mysql_query("....");<br />
while ($row = mysql_fetch_array($result)){<br />
echo "&lt;tr&gt;&lt;td&gt;".$row['percorso']."&lt;/td&gt;&lt;td height='6'&gt;&lt;/td&gt;&lt;/tr&gt;";<br />
}</p>
<p dir="auto">[/php]</p>
<p dir="auto">Non capisco l'utilità di tutto quel codice inutile sinceramente!</p>
]]></description><link>https://connect.gt/post/861373</link><guid isPermaLink="true">https://connect.gt/post/861373</guid><dc:creator><![CDATA[dymissy]]></dc:creator><pubDate>Sun, 04 Oct 2009 16:11:29 GMT</pubDate></item></channel></rss>