- Home
- Categorie
- Coding e Sistemistica
- PHP
- Evitare ripetizione campo
-
Evitare ripetizione campo
ciao a tutti. Spero possiate essermi di aiuto. Sonno alle prime armi....
ho creato un ciclo che mi elenco i miei amici in una colonna ed in quella accanto l'elenco dei loro hobby.
Vorrei però che non si ripetesse il nome quando gli hobby appartengono allo stesso mi spiego meglio...questo è il risultato che ottengo attualmente:es. matteo calcio
matteo pesca
luca calcio
luca pescainvece vorrei
es matteo calcio
pesca
luca calcio
pescasapreste dirmi come fare? vi posto il codic che ho creato...grazie in anticipo
<?
$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> </td>
<td> </td>
</tr>
<tr>
<td>Cognome e Nome</td>
<td> hobby</td>
</tr>
<tr>
<?
while($rigo=mysql_fetch_array($risultato)){
?><td>
<?=$rigo['cognome']?><?=$rigo['nome']?>
/td>
<td>
<?=$rigo['hobby']?>
</td>
<?
}
?>
-
dovresti ipostare il database in maniera diversa dove magari nello stesso record scrivi più hobby.. tipo
id nome hobby
| 01 | paolo | calcio pesca |
| 02 | marco | nuoto |
| 03 | piero | calcio |da qui poi fai una semplice query
SELECT * FORM amici
e a sua volta il ciclo e vedrai che non ci potranno essere problemi.
-
grazie per aver risposto...
purtroppo ho necessità di avere questa seconda tabella chiamata "hobby" con il campo "nome_hobby" , in quanto contiene altri dai riferiti all'hobby stesso.
sapreste suggerirmi la soluzione.
praticamnte mi serve che se l'id_ami di "amici" è uguale all'id_ami di "hobby", mi stampi una sola volta l'id e gli hobby in elenco con while.
non so come si fa in programmazione.
-
Dovresti utilizzare piu tabelle per avere il massimo della manegevolezza...
tipo:
tabelle:
pesca
nuoto
calcioIn queste tre tabelle c'è il campo nome, in cui inserisci il nome del praticante
-
Ciao,
il suggerimento + semplice da darti è quello di porre un limite
al numero di hobby, ti spiego
potresti crearti una tabellatab_amici id_amici nome hobby1 hobby2 fino ad es. a hobby 10
poi nel form che visualizzi all'amico con un ciclo for riempi 10 caselle di riepilogo, quelle a discesa per intenderci dalla tabella tab_hobby
l'intoppo in questo caso 2
1- dovresti scrivere nella tabella hobby quanti + ne conosci, però questo può essere superato dando la possibilità all'amico di fargli scrivere un ulteriore hobby, tipo
se il tuo hobby non è il lista clicca qui
2- che sarebbe l'intoppo vero e che odio tantissimo, il numero degli hobby
perchè lo odio?
perchè non sopporto che un programmatore non possa prevedere in questo caso il numero degli hobbyciao da Danny