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

    Importare da file di testo (con dati disordinati)

    Ciao a tutti..
    ho cercato un po' in giro ma non ho trovato la soluzione a questo problema
    devo passare in MySql dei dati inseriti in files di testo (8 files da 70K righe ca.)

    questo è un esempio di due record
    codice:
    TI_ Hallo, do you hear me ? (1986) ; Ausstrahlungen (1971) ; Fluide (1967) ; Atemstudie (1971) / Vinko Globokar
    PU_ Arles : Harmonia mundi France, p 1994
    DF_ 1 compact disc 
    NI_ Heinz Holliger, ob ; Orchestre symphonique de Radio Slovenija (sic) ; Quintette de jazz de Radio Slovenija (sic) ; Ensemble musique vivante (et al.) ; Vinko Globokar (et al.), dir 
    ne_ Harmonia mundi HMC 90933 
    @pa Globokar, Vinko (1934) 
    @tc [Opere. Scelta] 
    @C 96.F.588 
    @es Holliger, Heinz 
    @? Bollettino 1996 
    @i n.ingr. 9410 
    @S 05-98  FP  
    
    TI_ Globokar by Globokar
    PU_ Arles : Harmonia mundi France, p 1992
    DF_ 1 compact disc 
    CO_ Musique fran‡aise d'aujourd'hui 
    NI_ Vinko Globokar, trb ; Quatuor des trombones "Four bones" ; Choeur Apz Tone Tomsic de Ljubljana (sic) 
    NC_ Contiene: Prestop II (1991) ; changes (1973) ; Kolo (1988) ; Discours II (1968) ; Cri des Alpes (1986) 
    ne_ Harmonia mundi HMC 905214 
    @pa Globokar, Vinko (1934) 
    @tc [Opere. Scelta] 
    @C 96.F.587 
    @sd Trombone 
    @sd 5 tromboni 
    @sd Coro 
    @? Bollettino 1996 
    @i n.ingr. 9409 
    @S 05-98  FP
    non so come fare dal momento che non sono sempre presenti tutti i marcatori di campo (TI_ , @sd. ecc..)
    suppongo dovrei trovare un modo per aggiungere i campi vuoti così:

    codice:
    TI_ Hallo, do you hear me ? (1986) ; Ausstrahlungen (1971) ; Fluide (1967) ; Atemstudie (1971) / Vinko Globokar
    PU_ Arles : Harmonia mundi France, p 1994
    DF_ 1 compact disc 
    CO_  
    NI_ Heinz Holliger, ob ; Orchestre symphonique de Radio Slovenija (sic) ; Quintette de jazz de Radio Slovenija (sic) ; Ensemble musique vivante (et al.) ; Vinko Globokar (et al.), dir 
    NC_  
    ne_ Harmonia mundi HMC 90933 
    @pa Globokar, Vinko (1934) 
    @tc [Opere. Scelta] 
    @C 96.F.588 
    @es Holliger, Heinz 
    @sd1  
    @sd2  
    @sd3  
    @? Bollettino 1996 
    @i n.ingr. 9410 
    @S 05-98  FP  
    
    TI_ Globokar by Globokar
    PU_ Arles : Harmonia mundi France, p 1992
    DF_ 1 compact disc 
    CO_ Musique fran‡aise d'aujourd'hui 
    NI_ Vinko Globokar, trb ; Quatuor des trombones "Four bones" ; Choeur Apz Tone Tomsic de Ljubljana (sic) 
    NC_ Contiene: Prestop II (1991) ; changes (1973) ; Kolo (1988) ; Discours II (1968) ; Cri des Alpes (1986) 
    ne_ Harmonia mundi HMC 905214 
    @pa Globokar, Vinko (1934) 
    @tc [Opere. Scelta] 
    @C 96.F.587 
    @es  
    @sd1  Trombone 
    @sd2  5 tromboni 
    @sd3  Coro 
    @? Bollettino 1996 
    @i n.ingr. 9409 
    @S 05-98  FP
    dopodichè non avrei problemi a portarlo in csv e poi in mysql

    Qualcuno ha qualche idea?
    Grazie

    Ps. sono scarsino in php

  2. #2
    A parole:

    1. Apri il file in lettura (http://www.php.net/fopen).
    2. Effettua un ciclo (http://www.php.net/while) fino all termine del file (http://www.php.net/feof).
    3. Leggi la riga (http://www.php.net/fgets).
    4. Se è una riga vuota (delemitatore di fine record?), crea una query di inserimento in base all'array creato (vedi punto 5), esegui la queyr (http://www.php.net/mysql_query) e poi ricomincia il ciclo (http://www.php.net/continue).
    5. Fa il parsing della riga (es. http://www.php.net/preg_match) ed inserisci il contenuto in un campo di un array.

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.