paginazione complessa...AIUTO!

ragazzi, purtroppo io ancora nn ci riesco...e sono costretto a chiederlo a voi...

Dopo aver fatto la query dal DB vorrei impaginare i risultati in maniera più complessa del solito WHILE

mi spiego:

fatta la  query vorrei che al lato si creasse un div con tutti i risultati di un campo (per esempio: il campo è "categoria" e quindi il div contiene tutti dati di questo campo), a fianco a questo div se ne deve creare un altro dove vengono stampati tutti i dati in maniera un pò diversa e cioè: per ogni righa della tabella stampa l'oggetto, la foto la descrizione e la categoria...un pò come avviene utilizzando il ciclo WHILE.

spero di essere stato chiaro...

so che qui posso trovare la soluzione al mio problema!

A presto!

inviato 10 anni fa
micdech
X 0 X

RIporta un esempio statico in HTML

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Documento senza titolo</title>

<style type="text/css">

<!--

.Stile2 {color: #FF0000}

-->

</style>

</head>

<body>

<table width="700" border="0" cellspacing="0" cellpadding="0">

  <tr>

    <td colspan="2">&nbsp;</td>

  </tr>

  <tr>

    <td width="141"><p>Categorie:</p>

    <p>- Casa<br />

    - Ufficio<br />

    - Hobby<br />

      - Oggettistica<br />

      - Abbigliamento</p>

    <p>- Tutte  </p></td>

    <td width="559"><table border="0" cellpadding="0" cellspacing="0" width="100%">

      <tbody>

        <tr>

          <td width="10%">Oggetto:</td>

          <td width="90%"><strong>jeans Diesel </strong></td>

        </tr>

        <tr>

          <td>QUI VA LA FOTO! </td>

          <td><div align="right">Categoria: Abbigliamento</div></td>

        </tr>

        <tr>

          <td align="left" valign="top">Descrizione:</td>

          <td align="right" style="text-align: justify;"><p class="MsoNormal">xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<br />

          </p>

            <p class="MsoNormal">xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</p>

            <p class="MsoNormal">&nbsp;</p></td>

        </tr>

        <tr>

          <td align="left" valign="top"></td>

          <td><div align="right"><a href="cvs/gattof.zip">Biglietto da visita </a></div></td>

        </tr>

      </tbody>

    </table></td>

  </tr>

</table>

</body>

</html>

Questo è un esempio di quello che potrebbe essere la visualizzazione della pagina...sia quel menu con le categorie che la descrizione dell'oggetto sono la stessa query alla stessa tabella.

spero si capisca...altrimenti vi rimando al mio sito...per frvi capire bene cosa vorrei fare...o potrei inserire l'immagine della progettazione della pagina fatta su carta.

A presto!

risposto 10 anni fa
micdech
X 0 X

Riporta anche la struttura della tabella (CREATE table ...)

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

no...io la tabella non la costruisco in php...

dunque...ti riporto l'inizio del mio codice...e poi cerco di spiegare cosa vorrei...

require("db.php"); 
   $query = "SELECT * FROM negozio ORDER BY id DESC LIMIT 0,10";
   $result = mysql_query($query, $db)or die("Errore di connessione");
   if (mysql_num_rows($result) == 0) { echo "<div id='testo'>Non ci sono oggetti nello StOrE attualmente</div>";}
      else{
      while($row = mysql_fetch_array($result)){
            echo "<table width='100%' border='0' cellspacing='0' cellpadding='2'>";
            echo "<tr><td><div id='testo'>$row[oggetto]</div></td>";
            echo "<td><div id='data'>::CATEGORIA:  $row[categoria]::</div></td></tr>";
            echo "<tr><td  width='20%'>";
             echo "<img src='img_store/$row[immagine]' align='center' valign='top' /></td>";
            echo "<td width='80%'><div id='testo'>$row[descrizione]</div></td>";
            echo "</tr>";
            echo "<tr><td></td>";
            echo "<td></td>";
            echo "<tr><td></td><td><div id='data'>";
            echo "CONDIZIONI: $row[condizioni] || PREZZO: $row[prezzo]  ||";
            echo " DISPONIBILITA': $row[disponibilità]";
            echo "</div></td></tr>";
            echo "<tr><td></td>";
            echo "<td><div id='data'>";
            echo "|| <a href='viewitem.php'><img src='admin/view.png' border='0' />guarda l'oggetto</a> ||";
            echo " <a href='additem.php'><img src='carrello.png' border='0' />aggiungi al carrello</a> ||";
            echo "</div></td>";
            echo "</table><br>";
            }};

ecco...in questo modo....praticamente vado a formare la lista dei prodotti che ho nel mio negozietto...

a fianco di questa tabella che creo...sulla destra...vorrei creare una specie di menu...che include tutte la categorie che si sono create nella tabella Negozio! e questo lo vorrei fare utilizzando già la query fatta...

è possibile?

risposto 10 anni fa
micdech
X 0 X

... lol ... dai lo schema SQL della tabella  negozio se no non può aiutarti :D

risposto 10 anni fa
Andrea Turso
Andrea Turso
86
X 0 X

Struttura della tabella `negozio`

--

CREATE TABLE `negozio` (

  `id` int(5) NOT NULL auto_increment,

  `immagine` varchar(80) NOT NULL default '',

  `oggetto` varchar(20) NOT NULL default '',

  `descrizione` tinytext NOT NULL,

  `prezzo` decimal(10,0) NOT NULL default '0',

  `disponibilità` decimal(2,0) NOT NULL default '0',

  `condizioni` varchar(20) NOT NULL default '',

  `categoria` varchar(20) NOT NULL default '',

  `data` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,

  PRIMARY KEY  (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ;

--

-- Dump dei dati per la tabella `negozio`

--

Grazie per l'avvertimento trash...

risposto 10 anni fa
micdech
X 0 X

Devi fare 2 query, una che estragga tutte le categorie presenti nella tabella negozio, e l'altra che prenda solo i record appartenenti alla categoria slezionata.

Per impaginare i risultati puoi costruire una tablella con una riga e due colonne. Nella cella a sinistra metti i risultati della prima query, in quella a destra quelli della seconda query.

Per semplificare la realizzazione dello script potresti effettuare prima le query e le relative fetch, salvando i record ottenuti in due array, e poi costruire le tabelle facendo dei foreach sugli array di dati. Separeresti così le due fasi dello script "recupero dati" e "presentazione dati".

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda