problema griglia foto

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
Salve, ho questo codice che vorrei mettere il testo sotto ogni album ma non me lo fa fare.. me lo mette sempre a destra..come posso risolvere?

ecco il codice:
PHP:
<?php
// Includo 
require_once(dirname(__FILE__) . '/inc.php');
require_once(dirname(__FILE__) . "/template/".$template_client."/header.php");

?>
<h2>Galleria fotografica</h2>
<br>
<br>
<div align="center">
<?php
	$result = $db->query("SELECT * FROM photo_categorie");
	
  $cols = 5;

   $galleria = "<table>";
  
   $i=0;
	
	
	while($row = $result->fetch_array())
	{
	$_cat= $row['titolo'];
	$id = $row['id'];
	
	
        if ($i%$cols==0) $galleria .= "<tr>";
        // if per aprire la riga della tabella
       
        $galleria .= "<td>";
		
	
  ?>
<tr>
	<td><a href="gallery_sezioni.php?cat=<?php echo $id; ?>"><img src="<?php echo $row["photo"]; ?>" title="<?php echo $row["titolo"]; ?>" alt="<?php echo $row["titolo"]; ?>"></a></td>
</tr>
<tr>
	<td><?php echo $row["testo"]; ?>"></td>
</tr>
</td>	  
<?php

if ($i%$cols==($cols-1)) $galleria .= "</tr>";
        // if per chiudere la riga della tabella
        $i++;
        // incremento il contatore degli elementi
   }  
	$galleria .= "</table>\n";
	echo $galleria;
  
  
?>
    
</div>	  
<?php
require_once(dirname(__FILE__) . "/template/".$template_client."/footer.php");
?>

vi ringrazio molto mi sapete dire come mai che ho provato tutti i modi ma niente e quindi chiedo a voi.

grazie,
luigi.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao,
il codice html per una tabella è cosi:
HTML:
        <table>
            <tr>
                <td>&nbsp;</td>
            </tr>
        </table>
quello che esce dal ciclo che hai fatto è indescrivibile

piuttosto prova un ciclo in questo modo
PHP:
<h2>Galleria fotografica</h2>
<table>
    <tr>
        <?php
        $db = mysql_query("SELECT * FROM photo_categorie");
        $num = mysql_num_rows($db);
        $y = 1;
        $i = 1;
        $cols = 5;
        while ($row = mysql_fetch_array($db)) {
            $_cat = $row['titolo'];
            $id = $row['id'];
            ?>
            <td>
                <a href="gallery_sezioni.php?cat=<?php echo $id; ?>"><img src="<?php echo $row["photo"]; ?>" title="<?php echo $row["titolo"]; ?>" alt="<?php echo $row["titolo"]; ?>"/></a>
                <p><?php echo $row["testo"]; ?></p>
            </td>
            <?php
            if ($i == $cols && $y < $num) {
                $i = 0;
                ?>
            </tr>
            <tr>
                <?php
            }
            $i++;
            $y++;
        }
        // se rimangono delle td da completare
        for ($x = 0; $x < $cols - $i + 1; $x++) {
            echo "<td>&nbsp;</td>";
        }
        ?>
    </tr>
</table>

Ho usato la libreria mysql per connettermi poiche ho messo un esempio online
niente ti vieta di usare la libreria che piu ti è comoda
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
grazie mille e funziona come deve..

scusa per il ritardo ma ho dovuto sistemare un notebook che mi ha preso tutta la giornata fino alle 20.00 di sera..

ciaoo...buona domenica.
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
scusa, molto .. ho visto che funziona bene anche benissimo...

ma come faccio il controllo che quando non ci sono i dati e far apparire "non ci sono album" ?

dove devo mettere l'if nel tuo codice?

grazie mille.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
puoi metterla prima del ciclo while

PHP:
$cols = 5;
if ($num == 0) {
    $i=$cols +1;
    echo "<td>&nbsp;</td>";
    echo "<td colspan='$cols'>Non ci sono album</td>";
    echo "<td>&nbsp;</td>";
}
while ($row = mysql_fetch_array($db)) {
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
ciao, ok, funziona e ti ringrazio molto..

una cosa personale del tuo sito perchè hai preso hosting windows non hosting linux visto che programmi in php??

per il php si usa hosting linux non hosting windows..



ciao e buona notte.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
luigi777 ha scritto:
perchè hai preso hosting windows non hosting linux visto che programmi in php??
Ciao,
il motivo è piuttosto semplice:
quando ho acquistato lo spazio ero completamente ignorante in materia.
Stavo studiando l'HTML ed ero ansioso di mettere online le mie primissime porcherie scritte sul blocco note di windows.
Durante l'acquisto ho sbagliato diversi passaggi che ho sistemato succesivamente con il supporto di Aruba.
La scelta di windows è stata fatta dalla mia ingenuità: visto che il mio pc usava un sistema operativo di microsoft ho scelto il sistema operativo di microsoft, tutto qui.
La scelta di php e mysql è dovuta al fatto che il sito dell'azienda dove lavoravo era scritto in php, quindi ho pensato che dopo l'html mi sarei messo a studiare il php.
Solo diversi mesi dopo l'acquisto ho caricato i miei primi disastri in php.
Ho ancora windows perchè per ora non mi crea problemi, visto che quello che ci faccio girare sono solo prove. Quando caricherò qualcosa di piu serio valuterò le prestazioni e se necessario chiederò il cambio di piattaforma.
:byebye:
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
Ciao,
il motivo è piuttosto semplice:
quando ho acquistato lo spazio ero completamente ignorante in materia.
Stavo studiando l'HTML ed ero ansioso di mettere online le mie primissime porcherie scritte sul blocco note di windows.
Durante l'acquisto ho sbagliato diversi passaggi che ho sistemato succesivamente con il supporto di Aruba.
La scelta di windows è stata fatta dalla mia ingenuità: visto che il mio pc usava un sistema operativo di microsoft ho scelto il sistema operativo di microsoft, tutto qui.
La scelta di php e mysql è dovuta al fatto che il sito dell'azienda dove lavoravo era scritto in php, quindi ho pensato che dopo l'html mi sarei messo a studiare il php.
Solo diversi mesi dopo l'acquisto ho caricato i miei primi disastri in php.
Ho ancora windows perchè per ora non mi crea problemi, visto che quello che ci faccio girare sono solo prove. Quando caricherò qualcosa di piu serio valuterò le prestazioni e se necessario chiederò il cambio di piattaforma.
:byebye:

ok, grazie per la spiegazione.
saluti
luigi.
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
rivengo con questa discussione perché ho dei problemi ---

vi posto il codice:
PHP:
<?php
// Includo 
require_once(dirname(__FILE__) . '/inc.php');
require_once(dirname(__FILE__) . "/template/".$template_client."/header.php");
require_once(dirname(__FILE__) . '/lib/paginazione.inc.php');

$_cat = (isset($_GET["cat"])) ? trim ((int)$_GET["cat"]): '';
$pagina = (isset($_GET["pagina"])) ? trim ((int)$_GET["pagina"]): '';

		$query = "SELECT  photo_categorie._dir as _dir, photo_categorie.titolo as cat_titolo  , photo.* FROM utenti 
       INNER JOIN photo 
          ON utenti.id = photo._userid INNER JOIN photo_categorie
          ON photo_categorie.id = photo._catid WHERE _catid='".$db->real_escape_string($_cat)."' ORDER BY _update DESC";
		$result = $db->query($query)or die($db->error);
		$row = $result->fetch_array();

		if(empty($_cat)) {
		echo "ID non specificato";
}
elseif ($result->num_rows == 0) { echo "Record non trovato"; }
else
{
	  
$pag = new Paginazione("SELECT  photo_categorie._dir as _dir , photo.* FROM utenti 
       INNER JOIN photo 
          ON utenti.id = photo._userid INNER JOIN photo_categorie
          ON photo_categorie.id = photo._catid WHERE _catid='".$db->real_escape_string($_cat)."' ORDER BY _update DESC",$cfg_photo_client, $pagina);

	
?>
<p class="titolo">Galleria: <?php echo $row["cat_titolo"]; ?></p>
<table align="center">
    <tr>
        <?php

	
	
	if($record = $pag->Show())
	{
		foreach($record as $row)
		{
		$num =$row;
        $y = 1;
        $i = 1;
		$cols = 5;
if ($num == 0) {
    $i=$cols +1;
    echo "<td>&nbsp;</td>";
    echo "<td colspan='$cols'>Non ci sono album</td>";
    echo "<td>&nbsp;</td>";
} 
     
            $_cat = $row['titolo'];
            $id = $row['id'];
            ?>
            <td>
			<a href="gallery_view.php?id=<?php echo $id; ?>"><img hspace='10' vspace='10' src="public/media/photo/<?php echo $row["_dir"]; ?>/img_thumb/<?php echo $row["url"]; ?>" alt="<?php echo $row["titolo"]; ?>"></a>
            <p><?php echo $row["titolo"]; ?></p></td>
            <?php
            if ($i == $cols && $y < $num) {
                $i = 0;
                ?>
            </tr>
            <tr>
                <?php
            }
            $i++;
            $y++;
        }
        // se rimangono delle td da completare
        for ($x = 0; $x < $cols - $i + 1; $x++) {
            echo "<td>&nbsp;</td>";
        }
        ?>
    </tr>
</table>
<p class="links"><a   href="gallery.php">Torna indietro </a></p>
<?php

}



?>

<?php


	// restituisce i link alle pagine
	if($link = $pag->Link(3))
	{
		?>
		<a href="?cat=<?php echo $_GET["cat"]; ?>&pagina=<?php echo $link['first']; ?>">&laquo;</a> <?php
			foreach($link['before'] as $bf)
			{
				?><a href="?cat=<?php echo $_GET["cat"]; ?>&pagina=<?php echo $bf;?>"><?php echo $bf;?></a> <?php
			}
			?><?php echo $link['current'];?> <?php
			foreach($link['after'] as $at)
			{
				?><a href="?cat=<?php echo $_GET["cat"]; ?>&pagina=<?php echo $at;?>"><?php echo $at;?></a> <?php
			}
		?><a href="?cat=<?php echo $_GET["cat"]; ?>&pagina=<?php echo $link['last'];?>">&raquo;</a>
		<?php
		}
		$result->free_result(); 
	}
	


require_once(dirname(__FILE__) . "/template/".$template_client."/footer.php");
?>

perché fa cosi:
paginazione.jpg

uso una classe che è questa:
http://www.sv-design.org/blog/php-mysql-paginazione-dati/

però io lo modificata e lo protetta.

avete idea perché?
grazie mille.
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
ora cosi:
PHP:
 <?php
// Includo 
require_once(dirname(__FILE__) . '/inc.php');
require_once(dirname(__FILE__) . "/template/".$template_client."/header.php");
require_once(dirname(__FILE__) . '/lib/paginazione.inc.php');

$_cat = (isset($_GET["cat"])) ? trim ((int)$_GET["cat"]): '';
$pagina = (isset($_GET["pagina"])) ? trim ((int)$_GET["pagina"]): '';

        $query = "SELECT  photo_categorie._dir as _dir, photo_categorie.titolo as cat_titolo  , photo.* FROM utenti 
       INNER JOIN photo 
          ON utenti.id = photo._userid INNER JOIN photo_categorie
          ON photo_categorie.id = photo._catid WHERE _catid='".$db->real_escape_string($_cat)."' ORDER BY _update DESC";
        $result = $db->query($query)or die($db->error);
        $row = $result->fetch_array();

        if(empty($_cat)) {
        echo "ID non specificato";
}
elseif ($result->num_rows == 0) { echo "Record non trovato"; }
else
{
?>
<table>
    <tr>
        <?php
      
        $num = $result->num_rows;
        $y = 1;
        $i = 1;
        $cols = 5;
        while ($row = $result->fetch_array()) {
            $_cat = $row['titolo'];
            $id = $row['id'];
            ?>
               <td>
            <a href="gallery_view.php?id=<?php echo $id; ?>"><img hspace='10' vspace='10' src="public/media/photo/<?php echo $row["_dir"]; ?>/img_thumb/<?php echo $row["url"]; ?>" alt="<?php echo $row["titolo"]; ?>"></a>
            <p><?php echo $row["titolo"]; ?></p></td>
         <?php
            if ($i == $cols && $y < $num) {
                $i = 0;
                ?>
            </tr>
            <tr>
                <?php
            }
            $i++;
            $y++;
        }
        // se rimangono delle td da completare
        for ($x = 0; $x < $cols - $i + 1; $x++) {
            echo "<td>&nbsp;</td>";
        }
        ?>
    </tr>
</table>
<?php
}
    


require_once(dirname(__FILE__) . "/template/".$template_client."/footer.php");
?>

senza paginazione fa il suo dovere.

e l'immagine è cosi:
Cattura.jpg

perché se metto la paginazione che è la mia classe che la sto usando per tutto il sito fa in quel modo lì.?

grazie mille.
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
ciao
volevo dire non tanto dove includi la classe, ma dove visualizzi i numeri di pagina (es guarda http://www.borgo-italia.it/foto_dautore/foto_autore.php ) i numeri in quel caso sono visualizzati una volta prima e una dopo le immagini.
è quello che vorrei sapere

ciao, si voglio fare come la tua..
solo se metto la paginazione mi pagina 5 foto per ogni pagina invece di vederle tutte come fa la tua ed in più ha la paginazione.
la classe la includo qui:
PHP:
// Includo 
require_once(dirname(__FILE__) . '/inc.php');
require_once(dirname(__FILE__) . "/template/".$template_client."/header.php");
require_once(dirname(__FILE__) . '/lib/paginazione.inc.php');

se mi dai una mano guarda il pelultimo script che ti ho messo e te lo risposto qui:

PHP:
 <?php
// Includo 
require_once(dirname(__FILE__) . '/inc.php');
require_once(dirname(__FILE__) . "/template/".$template_client."/header.php");
require_once(dirname(__FILE__) . '/lib/paginazione.inc.php');

$_cat = (isset($_GET["cat"])) ? trim ((int)$_GET["cat"]): '';
$pagina = (isset($_GET["pagina"])) ? trim ((int)$_GET["pagina"]): '';

        $query = "SELECT  photo_categorie._dir as _dir, photo_categorie.titolo as cat_titolo  , photo.* FROM utenti 
       INNER JOIN photo 
          ON utenti.id = photo._userid INNER JOIN photo_categorie
          ON photo_categorie.id = photo._catid WHERE _catid='".$db->real_escape_string($_cat)."' ORDER BY _update DESC";
        $result = $db->query($query)or die($db->error);
        $row = $result->fetch_array();

        if(empty($_cat)) {
        echo "ID non specificato";
}
elseif ($result->num_rows == 0) { echo "Record non trovato"; }
else
{
      
$pag = new Paginazione("SELECT  photo_categorie._dir as _dir , photo.* FROM utenti 
       INNER JOIN photo 
          ON utenti.id = photo._userid INNER JOIN photo_categorie
          ON photo_categorie.id = photo._catid WHERE _catid='".$db->real_escape_string($_cat)."' ORDER BY _update DESC",$cfg_photo_client, $pagina);

    
?>
<p class="titolo">Galleria: <?php echo $row["cat_titolo"]; ?></p>
<table align="center">
    <tr>
        <?php

    
    
    if($record = $pag->Show())
    {
        foreach($record as $row)
        {
        $num =$row;
        $y = 1;
        $i = 1;
        $cols = 5;
if ($num == 0) {
    $i=$cols +1;
    echo "<td>&nbsp;</td>";
    echo "<td colspan='$cols'>Non ci sono album</td>";
    echo "<td>&nbsp;</td>";
} 
     
            $_cat = $row['titolo'];
            $id = $row['id'];
            ?>
            <td>
            <a href="gallery_view.php?id=<?php echo $id; ?>"><img hspace='10' vspace='10' src="public/media/photo/<?php echo $row["_dir"]; ?>/img_thumb/<?php echo $row["url"]; ?>" alt="<?php echo $row["titolo"]; ?>"></a>
            <p><?php echo $row["titolo"]; ?></p></td>
            <?php
            if ($i == $cols && $y < $num) {
                $i = 0;
                ?>
            </tr>
            <tr>
                <?php
            }
            $i++;
            $y++;
        }
        // se rimangono delle td da completare
        for ($x = 0; $x < $cols - $i + 1; $x++) {
            echo "<td>&nbsp;</td>";
        }
        ?>
    </tr>
</table>
<p class="links"><a   href="gallery.php">Torna indietro </a></p>
<?php

}



?>

<?php


    // restituisce i link alle pagine
    if($link = $pag->Link(3))
    {
        ?>
        <a href="?cat=<?php echo $_GET["cat"]; ?>&pagina=<?php echo $link['first']; ?>">&laquo;</a> <?php
            foreach($link['before'] as $bf)
            {
                ?><a href="?cat=<?php echo $_GET["cat"]; ?>&pagina=<?php echo $bf;?>"><?php echo $bf;?></a> <?php
            }
            ?><?php echo $link['current'];?> <?php
            foreach($link['after'] as $at)
            {
                ?><a href="?cat=<?php echo $_GET["cat"]; ?>&pagina=<?php echo $at;?>"><?php echo $at;?></a> <?php
            }
        ?><a href="?cat=<?php echo $_GET["cat"]; ?>&pagina=<?php echo $link['last'];?>">&raquo;</a>
        <?php
        }
      
    }
    


require_once(dirname(__FILE__) . "/template/".$template_client."/footer.php");
?>

ti ringrazio molto se mi risolvi il problema.

grazie mille.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
148
63
PR
www.borgo-italia.it
ciao
sto guardando la classe (che non conosco, io ne uso un'altra) comunque così per una prima battuta, metti un var_dump
PHP:
<?php
//......
var_dump($cfg_photo_client);//cosa ti da questo var dump?
$pag = new Paginazione("SELECT  photo_categorie._dir as _dir , photo.* FROM utenti 
       INNER JOIN photo 
          ON utenti.id = photo._userid INNER JOIN photo_categorie
          ON photo_categorie.id = photo._catid WHERE _catid='".$db->real_escape_string($_cat)."' ORDER BY _update DESC",$cfg_photo_client, $pagina);
//..... 
?>
ho la vaga impressione che dipenda dal valore della variabile $cfg_photo_client.
posta cosa risulta
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
ciao la variabile : $cfg_photo_client ="5"; è quella che dovrebbe dividere le pagine.

Ma se metto 10, me le mette tutte in una linea sola.. e non fa le colonne ed non so il motivo.

appena ho tempo ci rimetto le mani sopra.

grazie mille.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
148
63
PR
www.borgo-italia.it
ciao
no, credo proprio che sia il numero di record per pagina (infatti te ne mette 5), poi perche mettendo 10 te le mette in liea è da scoprire, ma a parte messe in linea appaiono 10 immagini e la paginazione (numeri)?
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
ciao, ho messo 10, e fa cosi:
Cattura.jpg

ho 145 foto.

Non posso cambiare la paginazione perché la sto usando tutta nel sito e per me e un casino se devo cambiare la classe per la paginazione.

idee?

grazie mille.
 
Discussioni simili
Autore Titolo Forum Risposte Data
K [RISOLTO] Problema Griglia Php+Mysql PHP 13
M Problema chiamata Ajax per vista Griglia o vista Lista Ajax 1
mythar Problema Griglia Infragistics VB.NET Programmazione 0
A Problema, non so, di scale() o transform, oppure altro? HTML e CSS 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
T PROBLEMA CON ARRAY PHP 8
L problema con query select PHP 2
R Problema query con ricerca id numerico PHP 2
F Problema con risposta PHP 0
S problema con recupero dati tabella mysql PHP 2
Z Problema con il mio tp-l i nk Reti LAN e Wireless 1
I PROBLEMA: Sostituzione sito XAMPP E-Commerce 0
T problema data 30/11/-1 PHP 0
L Problema RAM con Tomcat 8 Apache 0
napuleone problema con sort e asort PHP 4
Y Problema incolonnamento tabella PHP 7
S problema salvataggio immagini Photoshop 0
Z Problema con INT MySQL PHP 1
Z Problema database MySQL con XAMPP PHP 0
M Problema con controllo form in real time jQuery 6
D problema php mysql PHP 1
D problema php mysql PHP 1
M Problema Wi-Fi Linux Linux e Software 0
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
Daniele_Carrara Problema Aperture Mailup Email Marketing 5
F PROBLEMA ACCESSO INSTAGRAM Discussioni Varie 2
R Problema connessione db PHP 7
M problema if PHP 2
G Problema con Get page PHP 4
N Problema passaggio variabili tra pagine PHP 4
P Problema con require once PHP 6
P Problema con i package Java 1
A Problema login con Safari PHP 14
F INDESIGN: problema esportazione esecutivo per la stampa con foto B/N Webdesign e Grafica 0
H problema carrello woocommerce PHP 2
S problema con css bootstrap3 HTML e CSS 4
M .load() problema con caricamenti dinamici di js Javascript 0
M Problema su query JOIN in tre tabelle PHP 0
S Problema esportazione tabelle Mysql in Excel PHP 0
G Problema ------- con Query PHP 1
G Problema con Query PHP 1
M Problema su update di 3 tabelle PHP 1
T problema con select dinamica con jquery Javascript 0
A Problema checkout carrello php PHP 2
R Problema al server Domini 0
A Problema nel passare la variabile PHP 0
G Problema update di un database PHP 0
S Problema con spazi bianchi HTML e CSS 4
E Problema motore di ricerca FULL_TEXT PHP 0
Tommy03 Problema durata cookie PHP 5

Discussioni simili