Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [MySQL] Ottimizzare connessione al database

    Salve, sto provando a scrivere per la prima volta del codice php sfruttando un database MySQL per il mio sito: ho una tabella "autori" ed una "articoli", i cui campi sono rispettivamente di questo tipo: "id, nome, email" e "id, id_autore, titolo, testo". Nella pagina che mi visualizza un determinato articolo, passo la variabile "$id" e mi connetto al database in questo modo:


    // Prelevo l'articolo dal database
    $query = "SELECT * FROM articoli WHERE id='$id'";
    $result = mysql_query($query, $conn);
    $row = mysql_fetch_array($result);

    // Decodifico l'autore
    $query_autore = "SELECT nome, email FROM autori WHERE id='$row[id_autore]'";
    $result_autore = mysql_query($query_autore, $conn);
    $row_autore = mysql_fetch_array($result_autore);


    Esiste un modo per scrivere un numero minore di istruzioni e velocizzare il prelievo di questi dati?

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    Prova:

    SELECT * FROM articoli, autori
    where autore.id=articoli.id_autore
    AND articoli.id='$id'

    Potresti usare il JOIN, me sarebbe solo una forma di sintassi diversa. La sostanza è identica. Solo più chiaro così per chi inizia.


  3. #3
    Per curiosità, potresti dirmi anche la sintassi del join? In che casi particolari si usa?

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    Originariamente inviato da Sacro_Gemini
    Per curiosità, potresti dirmi anche la sintassi del join? In che casi particolari si usa?
    SELECT * FROM articoli
    LEFT JOIN autori
    ON autori.id=articoli.id_aut
    where articoli.id='$id'

    E' l'equivalente dell'altra. Si usano quando devi raccogliere dati tra tabelle tra loro referenziate. Nel tuo caso le tabelle sono unita da autori.id=articoli.id_aut.


  5. #5
    Grazie mille!!

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.