Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2004
    Messaggi
    70

    problema ripetizione campo

    salve ho creato un elenco, ma vorrei che quando si ha lo stesso nome, ma interessi diversi, il nome e cognome si ripeta solo una volta. vi posto il codice ...
    per intenderci vorrei ottenere questo risultato..
    grazie in anticipo
    marco rossi pesca
    nuoto
    calcio

    giuseppe verdi pesca
    nuoto

    invece perora ottengo.......

    marco rossi pesca
    marco rossi nuoto
    marco rossi calcio

    giuseppe verdi pesca
    giuseppe verdi nuoto

    <?
    $query="SELECT * FROM amici LEFT JOIN hobby ON amici.id_amico=hobby.id_amico;$
    risultato= mysql_query($query);
    ?>
    <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">

    <tr>
    <td height="29" bgcolor="#FFFFCC"></td>
    <td bgcolor="#FFFFCC"></td>
    </tr>
    <tr>
    <td height="29" bgcolor="#FFFFCC"><div align="center" class="Stile18">Cognome e Nome</div></td>
    <td width="21%" bgcolor="#FFFFCC"><div align="center" class="Stile18">hobby</div></td>
    </tr>
    <tr>
    <?
    while($rigo=mysql_fetch_array($risultato)){
    ?>


    <td height="35" bgcolor="#FFffcc"><div align="center" class="Stile30">
    <span class="Stile20">Prof.</span>
    <?=$rigo['cognome']?>

    <?=$rigo['nome']?>
    </div></td>
    <td bgcolor="#FFffcc"><div align="center" class="Stile30">
    <?=$rigo['hobby']?>
    </td>
    <?
    }
    ?>

  2. #2
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    Come sono strutturate le tabelle amici e hobby??
    Posta la struttura delle tabelle...

    PS: prova ad usare nella query un DISTINCT


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

  3. #3
    Partendo dal presupposto che tu abbia un id_amico ho fatto in modo di ordinare in ordine alfabetico gli amici.

    All'inizio istanzio una variabile $memoria a vuota.

    Ogni volta che nel ciclo, all'interno della cella dove metti il nome dell'amico trovi una differenza fra $memoria e l'id dell'amico allora va scritto, altriementi esce una cella vuota.

    Partendo da questa base puoi fare quello che vuoi.

    Codice PHP:
    <?
    $query
    ="SELECT * FROM amici LEFT JOIN hobby ON amici.id_amico=hobby.id_amico order by cognome,nome ";
    $risultatomysql_query($query);
    ?>
    <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">

    <tr>
    <td height="29" bgcolor="#FFFFCC"> </td>
    <td bgcolor="#FFFFCC"> </td>
    </tr>
    <tr>
    <td height="29" bgcolor="#FFFFCC"><div align="center" class="Stile18">Cognome e Nome</div></td>
    <td width="21%" bgcolor="#FFFFCC"><div align="center" class="Stile18">hobby</div></td>
    </tr>
    <tr>
    <?
    $memoria
    ="";
    while(
    $rigo=mysql_fetch_array($risultato)){
    ?>


    <td height="35" bgcolor="#FFffcc"><div align="center" class="Stile30">
    <span class="Stile20">
    <?php 
    if($rigo['id_amico']!=$memoria){
    $memoria=$rigo['id_amico'];
    ?>
    Prof.</span>
    <?=$rigo['cognome']?> 
    <?=$rigo['nome']?>
    <?php
    }else{
    ?><?php
    }
    ?>
    </div></td>
    <td bgcolor="#FFffcc"><div align="center" class="Stile30">
    <?=$rigo['hobby']?>
    </td>
    <?
    }
    ?>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.