Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    148

    Consiglio su come "operare"

    Salve ragazzi,
    scusate l'ignoranza ma sono ancora alle prime armi...
    Vi chiedo consiglio su come agire per risolvere questo quesito, premetto che non ho necessariamente bisogno "della pappa pronta", ma un consiglio su come risolvere:
    ho dei record in un db che vengono visualizzati tramite un ciclo while nella pagina, ogniuno di questi record deve portare con se una serie di immagini, di cui una in particolare deve essere visualizzata in anteprima a fianco i campi del record.
    In pratica non so come muovermi per:
    - legare le immagini, che vengono caricate da una form sul server, al record db
    - distinguere da esse quella "principale" che verrà poi mostrata in anteprima

    Mi scuso ancora per la richiesta, ma mi sto scervellando e non sono riuscito a capire come risolvere.
    Grazie a tutti

  2. #2
    Devi creare un'altra tabella per le immagini, questa tabella conterra' (almeno) questi campi:
    • ID (indice numerico incrementale e chiave primaria della tabella)
    • ID esterno che contiene il codice del record dell'altra tabella a cui l'immagine e' collegata
    • percorso completo o almeno nome del file dell'immagine
    • flag per indicare se l'immagine e' quella "principale"

    in questo modo avrai una relazione uno-a-molti tra la tua tabella e quella delle immagini.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    148
    Ti ringrazio per la risposta, volevo chiederti un piccolo approfondimento su
    flag per indicare se l'immagine e' quella "principale"
    come faccio a realizzarlo?
    Grazie ancora

  4. #4
    Basta un campo CHAR(1) in cui scrivi P se e' l'immagine principale, e lo lasci vuoto per le altre. O un campo BOOLEAN con true/false.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    148
    Ti ringrazio di nuovo, e scusa se approfitto della tua pazienza, ma non ho ben capito se i record di id che legano un record di una tabella ad un altro si popolano automaticamente o devo farlo tramite script.
    Grazie ciao

  6. #6
    Devi popolarlo tu manualmente:
    • inserisci il record nella tabella principale
    • ottieni l'ID del record appena inserito
    • usi questo ID per popolare la seconda tabella

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    148
    Ciao a tutti, riscrivo perchè mi sono impallato in sto punto e non riesco a capire come andare avanti..
    Ho questo codice:
    Codice PHP:
    $tipo mysql_real_escape_string($tipo); 
    $query "SELECT Tipo, Comune, Acquisto, Prezzo, Descrizione FROM Immobili WHERE Immobili.Tipo LIKE '%$tipo%'";
    $risultato mysql_query($query);
    if (!
    $risultato)
    {
        die (
    "Non è possibile eseguire la richiesta: 
    "
    mysql_error());

    while (
    $ris_array mysql_fetch_assoc($risultato)) {
        echo 
    "<div id=\"contenutorecord\">";
        echo 
    "<div id=\"contenuto\">";
        
    $Acquisto strtoupper($ris_array['Acquisto']);
        
    $Tipo strtoupper($ris_array['Tipo']);
        
    $Comune strtoupper($ris_array['Comune']);
        
    $Descrizione tagliastringa($ris_array['Descrizione'],150);
        echo 
    "<h2>" $Acquisto " - " $Tipo " - " $Comune "   -   " $ris_array['Prezzo'] . "</h2>";
        echo 
    "

    $Descrizione "</p></div></div>";

    }
    mysql_close($link);

    soltanto che devo aggiungere ad ogni record l'immagine principale, come consigliato ho creato una tabella immagini con id, id_immobile, percorso file, flag...
    solo che qui mi blocco, devo fare aggiungere alla query un JOIN?
    Ho il cervello un panne e come al solito mi perdo alle basi...
    Un grazie anticipato per l'aiuto

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    148
    Nel frattempo ho fatto qualche prova di query, inserendo questa:
    Codice PHP:
    SELECT Immobili.TipoImmobili.ComuneImmobili.AcquistoImmobili.PrezzoImmobili.DescrizioneImmobili.IDImmagini.Id_ImmobiliImmagini.PercorsoImmagini.Flag,
    FROM Immobili JOIN Immagini ON Immobili.ID Immagini.Id_Immobili
    WHERE Immobili
    .Tipo LIKE '$Tipo' 
    ma mi restituisce:
    Codice PHP:
    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM Immobili JOIN Immagini ON Immobili.ID = Immagini.Id_Immobili WHERE Immobili' at line 2 
    La query non mi sembra sbagliata...

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    148
    Come consigliatomi sbagliavo la query perchè inserivo una virgola in più prima del FROM (eh si....sono proprio un pirla)

    Fatto sta che non so come "operare" per visualizzare l'immagine con flag "TRUE".
    Ricapitolando:
    con il ciclo visualizzo il record che ha allegato il percorso delle immagini, di cui una è principale.
    Devo visualizzare l'immagine principale per ogni record visualizzato.

    Nel percorso immagine del db è meglio che inserisco solo il percorso che punta alla cartella nel server, o anche il codice html (<img src...eccetera)??

    Per visualizzare l'immagine con il flag TRUE pensavo di fare così:
    Codice PHP:
    if ($ris_array['Flag'] == TRUE) {
            echo 
    "<div id=\"sfondoimgsmall\">[img] . $ris_array['Percorso'] . [/img]</div>"
        

    Oppure è sbagliato?
    Grazie a tutti

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    148
    Su ragazzi...

    vi chiedo un po' di aiuto..

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.