Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Separazione dati Mysql

  1. #1

    Separazione dati Mysql

    Ciao a tutti,

    Ho un database composto da vari campi. Riducendo al minimo il ragionamento ho un campo Codice e un campo Colori.

    Nel campo Codice ho sempre un solo valore (per così dire) mentre per il campo Colori raggruppo una serie di valori, per esempio: "Giallo, Rosso, Nero, Verde"

    Premesso che il numero di colori inserito non è sempre uguale, (per esempio per alcuni codici potrebbe esserci solo scritto Nero) volevo estrarre questi colori per riempire una Select in cui ogni Option era un colore diverso.

    E' possibile utilizzare la funzione split impostando la virgola come separatore?
    Oppure ci sono metodi migliori? Cosa mi consigliate?

    PS: la select che sto usando è una versione riadattata trovata nella sezione JS:
    http://forum.html.it/forum/showthrea...readid=1125660

  2. #2

    Re: Separazione dati Mysql

    Originariamente inviato da Pepo06
    per il campo Colori raggruppo una serie di valori, per esempio: "Giallo, Rosso, Nero, Verde"
    Questo viola le regole basi di normalizzazione. Utilizza una relazione molti a molti piuttosto.

    Originariamente inviato da Pepo06
    Premesso che il numero di colori inserito non è sempre uguale, (per esempio per alcuni codici potrebbe esserci solo scritto Nero) volevo estrarre questi colori per riempire una Select in cui ogni Option era un colore diverso.
    Se proprio non puoi far a meno di usare quel tipo di struttura. Puoi sfruttare explode() oppure un'espressione regolare per dividere la stringa con tutti i colori in un array.

  3. #3
    Ok grazie della risposta...Ora mi documento sulla relazione molti a molti e se trovo difficoltà scriverò qua

  4. #4
    Purtroppo il programma che utilizza questa persona per inserire i colori gli permette di inerire solo la serie di colori per ogni codice separata da virgola.

    A questo punto penso che punterò sulla funzione explode (tanto è destinato ad un applicativo interno e posso sorvolare sulle normalizzazioni).

    Codice PHP:
    $sSQL "SELECT * FROM db_magazzino Order by Colori";
    }
    $ris mysql_query($sSQL);
    while(
    $row mysql_fetch_assoc($ris)){ 
    $list[] = array('ID' => $row["ID"], 'Colori' => $row["Colori"]); } 
    Questa è la parte dello script (le select dinamiche che linkavo nel primo post) che si va a prendere i dati e li mette in un array.
    Da quanto mi pare di aver capito, la funzione explode restituisce un array.

    Come devo sostituire questo codice?

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 © 2026 vBulletin Solutions, Inc. All rights reserved.