Dividere risultati di un ciclo WHILE

Salve a tutti,

questo il mio primo post ed esordisco subito con una domandina che mi sta facendo dannare da giorni.

Attraverso il ciclo in inc_doc.php ricavo una serie di utenti che hanno dettagli in un campo del DB separati da un virgola.

Attraverso il numero di risultati totali n. utenti + n. dettagli riesco a sapere di quante righe ho bisogno nel mio documento.

Il problema riesco a fare tutto cio abbastaza agilmente con il LIMIT, solo che SELECT COUNT(*) mi divide solo il numero degli utenti , e non riesco a calcolare i dettagli per restringere il range di ricerca per pagina.

La tabella che contiente i dati deve essere ripetuta per il numero di pagine ... in modo da poter stampare le pagine in seguenza

<?PHP
for($pg=0; $pg < $totpg; $pg++ ){

$x = $pg*$righe ; // imposto il LIMIT x, y
$y = ($pg+1)*$righe;

include("inc_doc.php");

}
?>

inc_doc.php

$seldet = mysql_query("SELECT * FROM dettagli WHERE id = '".$_GET['id']."' LIMIT $x,$y ");


while ($rowdet=mysql_fetch_array($seldet)) { //inserisce la riga vuota con i dettagli

la struttura cosi;

cod.... ..utente...... anni... sesso

123..... Mario Rossi... 21...... M //in questo caso non ci sono dettagli

222..... Beppe Verdi ...78 ......M

--- .....tel 012345654132471

--- .....fax 012345656879858

--- .....email email@email.it

333..... Luca Gialli.... 24..... M

444......eccetera

il tutto elencato riga x riga dove il cliente una riga ed i dettagli non sono dei semplici <BR> ma righe vuote contenenti

--- dettaglio vuoto vuoto vuoto

GRAZIE

SAT

inviato 8 anni fa
satwanted
X 0 X

Il problema nasce dall'errata progettazione del DB. Non bisogna mail mettere in un campo dedi dati separati da virgole e poi volerli utilizzare via SQL. Questi dati dovevano essere conservati in una tabella a parte, in relazione uno-a-molti

:bye:

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