Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2017
    Messaggi
    18

    [DOMANDA] PHP e relazioni MYsql

    Buongiorno a tutti,
    non so se é la sezione giusta, quindi chiedo ai mod eventualmente di spostarla nel posto giusto,

    ho letto di tutto in internet per quanto riguarda le relazioni mysql,
    e la cosa non mi é molto chiara dal punto del php,
    faccio un esempio,
    ora io devo richiamare la riga 5 in php
    questa é relazionata con altre tabelle
    ora se io non ho capito male ogni volta che io devo fare una relazione la devo fare al momento,

    tipo:
    codice php prima
    SELECT * FROM abc WHERE xyz
    codice php dopo

    e corretto che io devo relazionare ogni volta in php?

    spero di essere riuscito a spiegarmi
    grazie

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Mi sa che non è chiarissimo.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Concordo, non ho capito niente.
    Penso anche che usi "relazione/relazionare" in modo errato, perché per esempio qui
    SELECT * FROM abc WHERE xyz
    le relazioni tra tabelle non c'entrano niente visto che ce n'è solo una coinvolta.

    Spiega bene, perché così è impossibile risponderti.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2017
    Messaggi
    18
    grazie ad entrambi per le risposte, sono un novellino,

    provo a spiegarvi la mia pagina personale, sono sicuro che cosi' riuscite a inquadrare meglio il mio problema,
    il mio intento e di fare una sito sui treni (sono uno sfegatato per i treni),
    quindi avra' la mia prima tabella che avra' il tipo di alimentazione del treno,
    poi avra' una seconda che sara' su che tipo di binari va,
    poi una terza tabella che unisce questi 2 cosï' da avere i vari dettagli,

    ora questo e quello che mi hanno detto di fare, avere tante tabelle ognuna con le sue specifiche,
    cosa che ho fatto,
    da quello che ho visto si fanno le relazioni,
    e si eseguono per vedere se vanno bene,

    ma quello che mi sfugge e questo, le relazioni sono una cosa fatta al momento che si danno le varie istruzioni per fare la relazione? oppure devo creare la relazione ogni volta?

    nel php devo creare la relazione mysql per ottenere il risultato del treno?

    spero che sono riuscito a spiegarmi
    Ultima modifica di tetramix; 02-07-2017 a 14:56

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Ok, penso di aver capito un po' meglio la tua richiesta.

    Vediamo con un esempio, avrai 2 tabelle più o meno come queste
    codice:
    Tabella treni
    -----------------------------------------------
    | id |   nome   | alimentazione | tipo_binari |
    -----------------------------------------------
    |  1 | treno_1  | elettrico     |      1      |
    |  2 | treno_2  | elettrico     |      1      |
    |  3 | treno_3  | diesel        |      2      |
    |  4 | treno_4  | elettrico     |      1      |
    -----------------------------------------------
    
    Tabella tipo binari
    -----------------
    | id |   nome   |
    -----------------
    |  1 | normale  |
    |  2 | ridotto  |
    -----------------
    Queste due tabelle sono relazionate tra loro in quanto la colonna "tipo_binari" della tabella dei treni è in relazione con la colonna "id" della tabella dei binari, quindi si può vedere che "treno_1" usa binari normali (tipo_binari 1), mentre treno_3 usa binari a scartamento ridotto (tipo_binari 2).
    In SQL puoi dichiarare formalmente questa relazione con una foreign key, non è obbligatorio, ma è da fare se si vuole realizzare una cosa fatta seriamente.
    In PHP invece non devi fare niente relativamente alla relazione tra le tabelle, con PHP esegui solo delle query scritte secondo ciò che ti serve.

    Dato che il tutto riguarda solo SQL, sposto in Database.

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2017
    Messaggi
    18
    grazie Alhazred,
    scusa lo sbaglio di sezione, ma avevo le idee ben confuse,
    ora dimmi se ho capito bene, se io scrivo FOREIGN KEY da quel momento le tabelle avranno una relazione per sempre,

  7. #7
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    La foreign key serve per vincolare quei due campi e sarà sempre attiva.
    Nello specifico questa foreign key dovrà indicare che nella colonna "tipo_binari" della tabella dei treni saranno ammessi solo valori presenti nel campo "id" della tabella dei binari.

    Nell'esempio proposto non potrai mettere il valore 3 nella colonna tipo_binari, se prima non aggiungi un tipo di binario che avrà id pari a 3.

    La foreign key serve solo per assicurare che ci sia consistenza tra i dati, perché appunto avere tipo_binario pari a 3 e non avere un binario con id pari a 3 non avrebbe senso.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2017
    Messaggi
    18
    Grazie di tutto,

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.