Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617

    2 tabelle un unico echo!

    Salve raga, come da titolo ho 2 tabelle una porta i nomi dei giocatori della mia squadra con le loro generalità, l'altra porta il nome del giocatore con il voto, la partita giocata e altre statistiche.

    Da tener presente che nella tabella voti i nommi dei giocatori sono ripetuti più volte perchè a ogni voto corrisponde un giocatore, e molto spesso sono gli stessi già inseriti.

    Adesso il problema.Vorrei creare una pagina dove mi vengono visualizzate le statistiche di ogni giocatore e vorrei che il tutto fosse,per così dire, in automatico.
    Lo schema della pagina dovrebbe essere:Nome Giocatore
    (metto br per farvi capire che è sotto)tutte le statistiche da me volute.

    Se faccio il ciclo while sulla tabella dei voti, ovviamente mi tira fuori anche il nome a doppione,cioè Pinco pallino voto 5, pincopallino voto 6 ecc. Io vorrei che Pinco pallino uscisse una sola volta. Per fare questo ho pensato di rpendere il nome del giocatore dalla tabella giocatori, che riporta il nome e conome una sola volta.
    Il problema però è che non riesco a far combaciare in un unico echo le due tabelle.In definitiva lo schema dovrebbe essere:

    Nome Giocatore(preso dalla prima tabella)
    Statistiche (preso dalla seconda tabella)

    Ho letto qualche cosa sul come far visualizzare sue tabelle però non riesco a far funzionare il tutto in un unico ciclo while.
    Spero di essere stato chiaro, mi rendo conto che magari non è facile capire.

    Grazie anticipatamente.

  2. #2
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    hai delle tabelle'??? posta la struttura e posta un esempio reale di quelo che vuoi ottenere
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  3. #3
    Ma per fare un join devi avere una chiave primaria in una tabella ( ad esempio nella prima un bel user_id) ed una chiave esterna nella seconda che punta a user_id. Tipo

    Tabella_uno

    user_id PK
    nome
    cognome
    squadra

    Tabella_due

    partita
    voto
    giocatore FK (tabella_uno-user.id)

    A quel punto fai un bel SELECT * FROM Tabellauno JOIN tabelladue on user_id=giocatore WHERE lecondizionichetipare

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Allora la struttura delle tabelle è questa.

    Tabella giocatori: id,nome_cognome, data_nascita,ruolo,commento.

    tabella voti: id,nome_giocatore(uguale a nome_cognome della prima tabella),voto,gol_fatti

    Nella seconda tabella ogni volta che si gioca una partita vengono inseriti nuovamente i giocatori con i voti ed eventuali gol di quella partita.Quindi immaginando che si siano giocate 2 partite,ci saranno 2 Giuseppe, 2 Michele ecc. e ad ognuno di essi verrà dato un voto e eventuali gol fatti.

    Ora vorrei creare la pagina che mi prende 1 sola volta il nome di un giocatore(anche se c'è ne sono 2 uguali) e che mi faccia vedere lasomma dei gol e i voti per ogni partita,però(ed è il problema reale)il nome giocatore deve comparire una sola volta non tante quante sono le volte che è stato inserito nel database.

    Grazie anticipatamente!

  5. #5
    Ma se ci sono 2 giocatori con il cognome uguali viene fuori qualche problema ... secondo me fare un references al cognome del giocatore non è consigliabile... forse sarebbe meglio farlo a id giocatore in modo tale da non ritrovarsi con omonimi.

    Un'altra cosa : te dici che vuoi visualizzare per ogni partita il voto del giocatore senza doppione, ma in queste tabelle non c'è traccia delle singole partite.
    Secondo me occorre o aggiungere un campo nella tabella voti ( che contiene la partita ), oppure ancora meglio creare una tabella partite, in cui puoi visualizzare i giocatori che ne hanno preso parte : a quel punto sarebbe facile individuare il voto del giocatore. Anche perchè, restando cosi le cose, secondo quale criterio l'interrogazione dovrebbe " preferire " un record anziche' un altro ?

  6. #6
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    Originariamente inviato da ezechiele2
    Ma se ci sono 2 giocatori con il cognome uguali viene fuori qualche problema ... secondo me fare un references al cognome del giocatore non è consigliabile... forse sarebbe meglio farlo a id giocatore in modo tale da non ritrovarsi con omonimi.

    Un'altra cosa : te dici che vuoi visualizzare per ogni partita il voto del giocatore senza doppione, ma in queste tabelle non c'è traccia delle singole partite.
    Secondo me occorre o aggiungere un campo nella tabella voti ( che contiene la partita ), oppure ancora meglio creare una tabella partite, in cui puoi visualizzare i giocatori che ne hanno preso parte : a quel punto sarebbe facile individuare il voto del giocatore. Anche perchè, restando cosi le cose, secondo quale criterio l'interrogazione dovrebbe " preferire " un record anziche' un altro ?
    concordo con ezechiele. al momento il database non è al top. bisogna crearne uno nuovo che corrisponda alle tue esigenze.

    hai due possibilità

    -inizi a studiarti bene i database e il php
    -ti affidi a qualcuno che te lo realizza(a pagamento o per volontariato)

    se la cosa è urgente ti consiglio la seconda opzione. perchè per fare quello che dici devi creare un database fatto bene, creare la gestione delle tabelle, e creare le join opportune per visualizzare i dati che a te servono.

    insomma c'è molto lavoro da fare.
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  7. #7
    Guarda penso che questo ti possa essere d'aiuto. E' lo schema concettuale per la progettazione di una base di dati sul campionato di calcio .. ricordo che l'anno scorso lo feci come esercizio !! Ti consiglio di partire da questo schema e' modificarlo ..



  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Mi scuso per l'errore nel postare ma ho dimenticato che nella tabella voti(quindi la seconda)sono presenti sia il capo partita che quello Data_partita.
    Forse mi rispeto ma io non credo di dover fare una cosa complicatissima, vi porto ora lo sche ma che vorrei:

    Micheluzzo(nome a caso)
    Partita Voto Gol
    Prova vs.Prova 6 1
    Prova2 vs.Prova2 8 2

    L'inceppo stà nel fatto che mi ripete sempre il nome se nella tabella ci sono due nomi uguali.
    In pratica esce così:

    Micheluzzo
    Partita Voto Gol
    Prova vs.Prova 6 1
    Micheluzzo
    Partita Voto Gol
    Prova2 vs.Prova2 8 2

    Io vorrei che micheluzzo,voto e gol fossero scritti una sola volta mentre mi vengono stampati tutti i record richiesti uno sotto l'altro.

  9. #9
    Ma quale condizione specifici nel where ?

    Postaci il form con il quale decidi cosa visualizzare ed il file che fa' l'interrogazione al database, cosi capiamo meglio

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.